generics.json 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521
  1. {
  2. "address": "Generics111111111111111111111111111111111111",
  3. "metadata": {
  4. "name": "generics",
  5. "version": "0.1.0",
  6. "spec": "0.1.0",
  7. "description": "Created with Anchor"
  8. },
  9. "instructions": [
  10. {
  11. "name": "generic",
  12. "discriminator": [
  13. 63,
  14. 235,
  15. 150,
  16. 148,
  17. 7,
  18. 255,
  19. 185,
  20. 159
  21. ],
  22. "accounts": [
  23. {
  24. "name": "generic_acc"
  25. },
  26. {
  27. "name": "payer",
  28. "writable": true,
  29. "signer": true
  30. },
  31. {
  32. "name": "system_program",
  33. "address": "11111111111111111111111111111111"
  34. }
  35. ],
  36. "args": [
  37. {
  38. "name": "generic_field",
  39. "type": {
  40. "defined": {
  41. "name": "GenericType",
  42. "generics": [
  43. {
  44. "kind": "type",
  45. "type": "u32"
  46. },
  47. {
  48. "kind": "type",
  49. "type": "u64"
  50. },
  51. {
  52. "kind": "const",
  53. "value": "10"
  54. }
  55. ]
  56. }
  57. }
  58. }
  59. ]
  60. }
  61. ],
  62. "accounts": [
  63. {
  64. "name": "GenericAccount",
  65. "discriminator": [
  66. 10,
  67. 71,
  68. 68,
  69. 49,
  70. 51,
  71. 72,
  72. 147,
  73. 245
  74. ]
  75. }
  76. ],
  77. "types": [
  78. {
  79. "name": "GenericAccount",
  80. "type": {
  81. "kind": "struct",
  82. "fields": [
  83. {
  84. "name": "data",
  85. "type": {
  86. "defined": {
  87. "name": "GenericType",
  88. "generics": [
  89. {
  90. "kind": "type",
  91. "type": "u32"
  92. },
  93. {
  94. "kind": "type",
  95. "type": "u64"
  96. },
  97. {
  98. "kind": "const",
  99. "value": "10"
  100. }
  101. ]
  102. }
  103. }
  104. }
  105. ]
  106. }
  107. },
  108. {
  109. "name": "GenericEnum",
  110. "generics": [
  111. {
  112. "kind": "type",
  113. "name": "T"
  114. },
  115. {
  116. "kind": "type",
  117. "name": "U"
  118. },
  119. {
  120. "kind": "const",
  121. "name": "N",
  122. "type": "usize"
  123. }
  124. ],
  125. "type": {
  126. "kind": "enum",
  127. "variants": [
  128. {
  129. "name": "Unnamed",
  130. "fields": [
  131. {
  132. "generic": "T"
  133. },
  134. {
  135. "generic": "U"
  136. }
  137. ]
  138. },
  139. {
  140. "name": "Named",
  141. "fields": [
  142. {
  143. "name": "gen1",
  144. "type": {
  145. "generic": "T"
  146. }
  147. },
  148. {
  149. "name": "gen2",
  150. "type": {
  151. "generic": "U"
  152. }
  153. }
  154. ]
  155. },
  156. {
  157. "name": "Struct",
  158. "fields": [
  159. {
  160. "defined": {
  161. "name": "GenericNested",
  162. "generics": [
  163. {
  164. "kind": "type",
  165. "type": {
  166. "generic": "T"
  167. }
  168. },
  169. {
  170. "kind": "type",
  171. "type": {
  172. "generic": "U"
  173. }
  174. }
  175. ]
  176. }
  177. }
  178. ]
  179. },
  180. {
  181. "name": "Arr",
  182. "fields": [
  183. {
  184. "array": [
  185. {
  186. "generic": "T"
  187. },
  188. {
  189. "generic": "N"
  190. }
  191. ]
  192. }
  193. ]
  194. }
  195. ]
  196. }
  197. },
  198. {
  199. "name": "GenericNested",
  200. "generics": [
  201. {
  202. "kind": "type",
  203. "name": "V"
  204. },
  205. {
  206. "kind": "type",
  207. "name": "Z"
  208. }
  209. ],
  210. "type": {
  211. "kind": "struct",
  212. "fields": [
  213. {
  214. "name": "gen1",
  215. "type": {
  216. "generic": "V"
  217. }
  218. },
  219. {
  220. "name": "gen2",
  221. "type": {
  222. "generic": "Z"
  223. }
  224. }
  225. ]
  226. }
  227. },
  228. {
  229. "name": "GenericType",
  230. "generics": [
  231. {
  232. "kind": "type",
  233. "name": "T"
  234. },
  235. {
  236. "kind": "type",
  237. "name": "U"
  238. },
  239. {
  240. "kind": "const",
  241. "name": "N",
  242. "type": "usize"
  243. }
  244. ],
  245. "type": {
  246. "kind": "struct",
  247. "fields": [
  248. {
  249. "name": "gen1",
  250. "type": {
  251. "generic": "T"
  252. }
  253. },
  254. {
  255. "name": "gen2",
  256. "type": {
  257. "generic": "U"
  258. }
  259. },
  260. {
  261. "name": "gen3",
  262. "type": {
  263. "defined": {
  264. "name": "GenericNested",
  265. "generics": [
  266. {
  267. "kind": "type",
  268. "type": "u32"
  269. },
  270. {
  271. "kind": "type",
  272. "type": {
  273. "generic": "U"
  274. }
  275. }
  276. ]
  277. }
  278. }
  279. },
  280. {
  281. "name": "gen4",
  282. "type": {
  283. "defined": {
  284. "name": "GenericNested",
  285. "generics": [
  286. {
  287. "kind": "type",
  288. "type": {
  289. "generic": "T"
  290. }
  291. },
  292. {
  293. "kind": "type",
  294. "type": {
  295. "defined": {
  296. "name": "MyStruct"
  297. }
  298. }
  299. }
  300. ]
  301. }
  302. }
  303. },
  304. {
  305. "name": "gen5",
  306. "type": {
  307. "defined": {
  308. "name": "GenericNested",
  309. "generics": [
  310. {
  311. "kind": "type",
  312. "type": {
  313. "generic": "T"
  314. }
  315. },
  316. {
  317. "kind": "type",
  318. "type": {
  319. "generic": "U"
  320. }
  321. }
  322. ]
  323. }
  324. }
  325. },
  326. {
  327. "name": "gen6",
  328. "type": {
  329. "defined": {
  330. "name": "GenericNested",
  331. "generics": [
  332. {
  333. "kind": "type",
  334. "type": "u32"
  335. },
  336. {
  337. "kind": "type",
  338. "type": "u64"
  339. }
  340. ]
  341. }
  342. }
  343. },
  344. {
  345. "name": "gen7",
  346. "type": {
  347. "defined": {
  348. "name": "GenericNested",
  349. "generics": [
  350. {
  351. "kind": "type",
  352. "type": {
  353. "generic": "T"
  354. }
  355. },
  356. {
  357. "kind": "type",
  358. "type": {
  359. "defined": {
  360. "name": "GenericNested",
  361. "generics": [
  362. {
  363. "kind": "type",
  364. "type": {
  365. "generic": "T"
  366. }
  367. },
  368. {
  369. "kind": "type",
  370. "type": {
  371. "generic": "U"
  372. }
  373. }
  374. ]
  375. }
  376. }
  377. }
  378. ]
  379. }
  380. }
  381. },
  382. {
  383. "name": "arr",
  384. "type": {
  385. "array": [
  386. "u8",
  387. {
  388. "generic": "N"
  389. }
  390. ]
  391. }
  392. },
  393. {
  394. "name": "warr",
  395. "type": {
  396. "defined": {
  397. "name": "WrappedU8Array",
  398. "generics": [
  399. {
  400. "kind": "type",
  401. "type": {
  402. "generic": "N"
  403. }
  404. }
  405. ]
  406. }
  407. }
  408. },
  409. {
  410. "name": "warrval",
  411. "type": {
  412. "defined": {
  413. "name": "WrappedU8Array",
  414. "generics": [
  415. {
  416. "kind": "const",
  417. "value": "10"
  418. }
  419. ]
  420. }
  421. }
  422. },
  423. {
  424. "name": "enm1",
  425. "type": {
  426. "defined": {
  427. "name": "GenericEnum",
  428. "generics": [
  429. {
  430. "kind": "type",
  431. "type": {
  432. "generic": "T"
  433. }
  434. },
  435. {
  436. "kind": "type",
  437. "type": {
  438. "generic": "U"
  439. }
  440. },
  441. {
  442. "kind": "type",
  443. "type": {
  444. "generic": "N"
  445. }
  446. }
  447. ]
  448. }
  449. }
  450. },
  451. {
  452. "name": "enm2",
  453. "type": {
  454. "defined": {
  455. "name": "GenericEnum",
  456. "generics": [
  457. {
  458. "kind": "type",
  459. "type": {
  460. "defined": {
  461. "name": "GenericNested",
  462. "generics": [
  463. {
  464. "kind": "type",
  465. "type": {
  466. "generic": "T"
  467. }
  468. },
  469. {
  470. "kind": "type",
  471. "type": "u64"
  472. }
  473. ]
  474. }
  475. }
  476. },
  477. {
  478. "kind": "type",
  479. "type": "u32"
  480. },
  481. {
  482. "kind": "const",
  483. "value": "30"
  484. }
  485. ]
  486. }
  487. }
  488. }
  489. ]
  490. }
  491. },
  492. {
  493. "name": "MyStruct",
  494. "type": {
  495. "kind": "struct",
  496. "fields": [
  497. {
  498. "name": "some_field",
  499. "type": "u8"
  500. }
  501. ]
  502. }
  503. },
  504. {
  505. "name": "WrappedU8Array",
  506. "generics": [
  507. {
  508. "kind": "const",
  509. "name": "N",
  510. "type": "usize"
  511. }
  512. ],
  513. "type": {
  514. "kind": "struct",
  515. "fields": [
  516. "u8"
  517. ]
  518. }
  519. }
  520. ]
  521. }