@aztec/simulator 0.0.1-commit.3100065 → 0.0.1-commit.330febf

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/dest/public/avm/testing/account_proof_fetcher.d.ts +2 -0
  2. package/dest/public/avm/testing/account_proof_fetcher.d.ts.map +1 -0
  3. package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.d.ts +1 -1
  4. package/dest/public/avm/testing/base_avm_simulation_tester.d.ts.map +1 -0
  5. package/dest/public/avm/testing/utils.d.ts +32 -0
  6. package/dest/public/avm/testing/utils.d.ts.map +1 -0
  7. package/dest/public/avm/{fixtures → testing}/utils.js +0 -33
  8. package/dest/public/avm_simulator.d.ts +28 -0
  9. package/dest/public/avm_simulator.d.ts.map +1 -0
  10. package/dest/public/avm_simulator.js +4 -0
  11. package/dest/public/avm_simulator_pool.d.ts +45 -0
  12. package/dest/public/avm_simulator_pool.d.ts.map +1 -0
  13. package/dest/public/avm_simulator_pool.js +197 -0
  14. package/dest/public/cdb_ipc_server.d.ts +40 -0
  15. package/dest/public/cdb_ipc_server.d.ts.map +1 -0
  16. package/dest/public/cdb_ipc_server.js +153 -0
  17. package/dest/public/fixtures/index.d.ts +2 -4
  18. package/dest/public/fixtures/index.d.ts.map +1 -1
  19. package/dest/public/fixtures/index.js +1 -3
  20. package/dest/public/fixtures/public_processor_test_env.d.ts +30 -0
  21. package/dest/public/fixtures/public_processor_test_env.d.ts.map +1 -0
  22. package/dest/public/fixtures/public_processor_test_env.js +73 -0
  23. package/dest/public/fixtures/public_tx_simulation_tester.d.ts +11 -7
  24. package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
  25. package/dest/public/fixtures/public_tx_simulation_tester.js +29 -41
  26. package/dest/public/fixtures/simple_contract_data_source.js +1 -1
  27. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts +11 -4
  28. package/dest/public/fuzzing/avm_fuzzer_simulator.d.ts.map +1 -1
  29. package/dest/public/fuzzing/avm_fuzzer_simulator.js +24 -10
  30. package/dest/public/fuzzing/avm_simulator_bin.js +4 -4
  31. package/dest/public/index.d.ts +5 -2
  32. package/dest/public/index.d.ts.map +1 -1
  33. package/dest/public/index.js +2 -1
  34. package/dest/public/public_db_sources.d.ts +2 -2
  35. package/dest/public/public_db_sources.d.ts.map +1 -1
  36. package/dest/public/public_db_sources.js +1 -1
  37. package/dest/public/public_processor/guarded_merkle_tree.d.ts +4 -3
  38. package/dest/public/public_processor/guarded_merkle_tree.d.ts.map +1 -1
  39. package/dest/public/public_processor/guarded_merkle_tree.js +3 -0
  40. package/dest/public/public_processor/public_processor.d.ts +8 -4
  41. package/dest/public/public_processor/public_processor.d.ts.map +1 -1
  42. package/dest/public/public_processor/public_processor.js +19 -34
  43. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts +17 -0
  44. package/dest/public/public_tx_simulator/dumping_public_tx_simulator.d.ts.map +1 -0
  45. package/dest/public/public_tx_simulator/{dumping_cpp_public_tx_simulator.js → dumping_public_tx_simulator.js} +10 -23
  46. package/dest/public/public_tx_simulator/factories.d.ts +8 -8
  47. package/dest/public/public_tx_simulator/factories.d.ts.map +1 -1
  48. package/dest/public/public_tx_simulator/factories.js +8 -8
  49. package/dest/public/public_tx_simulator/index.d.ts +4 -6
  50. package/dest/public/public_tx_simulator/index.d.ts.map +1 -1
  51. package/dest/public/public_tx_simulator/index.js +2 -4
  52. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +42 -75
  53. package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
  54. package/dest/public/public_tx_simulator/public_tx_simulator.js +98 -323
  55. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts +24 -0
  56. package/dest/public/public_tx_simulator/public_tx_simulator_base.d.ts.map +1 -0
  57. package/dest/public/public_tx_simulator/public_tx_simulator_base.js +31 -0
  58. package/dest/public/public_tx_simulator/public_tx_simulator_interface.d.ts +5 -5
  59. package/dest/public/test_executor_metrics.d.ts +1 -6
  60. package/dest/public/test_executor_metrics.d.ts.map +1 -1
  61. package/dest/public/test_executor_metrics.js +0 -22
  62. package/package.json +20 -18
  63. package/src/public/avm/{fixtures → testing}/utils.ts +0 -39
  64. package/src/public/avm_simulator.ts +29 -0
  65. package/src/public/avm_simulator_pool.ts +226 -0
  66. package/src/public/cdb_ipc_server.ts +198 -0
  67. package/src/public/fixtures/index.ts +1 -3
  68. package/src/public/fixtures/public_processor_test_env.ts +88 -0
  69. package/src/public/fixtures/public_tx_simulation_tester.ts +37 -50
  70. package/src/public/fixtures/simple_contract_data_source.ts +1 -1
  71. package/src/public/fuzzing/avm_fuzzer_simulator.ts +25 -10
  72. package/src/public/fuzzing/avm_simulator_bin.ts +3 -5
  73. package/src/public/index.ts +7 -3
  74. package/src/public/public_db_sources.ts +1 -1
  75. package/src/public/public_processor/guarded_merkle_tree.ts +5 -2
  76. package/src/public/public_processor/public_processor.ts +25 -39
  77. package/src/public/public_tx_simulator/{dumping_cpp_public_tx_simulator.ts → dumping_public_tx_simulator.ts} +15 -31
  78. package/src/public/public_tx_simulator/factories.ts +27 -10
  79. package/src/public/public_tx_simulator/index.ts +6 -5
  80. package/src/public/public_tx_simulator/public_tx_simulator.ts +139 -480
  81. package/src/public/public_tx_simulator/public_tx_simulator_base.ts +37 -0
  82. package/src/public/public_tx_simulator/public_tx_simulator_interface.ts +5 -5
  83. package/src/public/test_executor_metrics.ts +0 -24
  84. package/dest/public/avm/avm_context.d.ts +0 -41
  85. package/dest/public/avm/avm_context.d.ts.map +0 -1
  86. package/dest/public/avm/avm_context.js +0 -44
  87. package/dest/public/avm/avm_contract_call_result.d.ts +0 -32
  88. package/dest/public/avm/avm_contract_call_result.d.ts.map +0 -1
  89. package/dest/public/avm/avm_contract_call_result.js +0 -54
  90. package/dest/public/avm/avm_execution_environment.d.ts +0 -24
  91. package/dest/public/avm/avm_execution_environment.d.ts.map +0 -1
  92. package/dest/public/avm/avm_execution_environment.js +0 -33
  93. package/dest/public/avm/avm_gas.d.ts +0 -44
  94. package/dest/public/avm/avm_gas.d.ts.map +0 -1
  95. package/dest/public/avm/avm_gas.js +0 -195
  96. package/dest/public/avm/avm_machine_state.d.ts +0 -98
  97. package/dest/public/avm/avm_machine_state.d.ts.map +0 -1
  98. package/dest/public/avm/avm_machine_state.js +0 -110
  99. package/dest/public/avm/avm_memory_types.d.ts +0 -275
  100. package/dest/public/avm/avm_memory_types.d.ts.map +0 -1
  101. package/dest/public/avm/avm_memory_types.js +0 -354
  102. package/dest/public/avm/avm_simulator.d.ts +0 -41
  103. package/dest/public/avm/avm_simulator.d.ts.map +0 -1
  104. package/dest/public/avm/avm_simulator.js +0 -192
  105. package/dest/public/avm/avm_simulator_interface.d.ts +0 -9
  106. package/dest/public/avm/avm_simulator_interface.d.ts.map +0 -1
  107. package/dest/public/avm/avm_simulator_interface.js +0 -3
  108. package/dest/public/avm/calldata.d.ts +0 -51
  109. package/dest/public/avm/calldata.d.ts.map +0 -1
  110. package/dest/public/avm/calldata.js +0 -64
  111. package/dest/public/avm/errors.d.ts +0 -104
  112. package/dest/public/avm/errors.d.ts.map +0 -1
  113. package/dest/public/avm/errors.js +0 -141
  114. package/dest/public/avm/fixtures/account_proof_fetcher.d.ts +0 -2
  115. package/dest/public/avm/fixtures/account_proof_fetcher.d.ts.map +0 -1
  116. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +0 -22
  117. package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +0 -1
  118. package/dest/public/avm/fixtures/avm_simulation_tester.js +0 -84
  119. package/dest/public/avm/fixtures/base_avm_simulation_tester.d.ts.map +0 -1
  120. package/dest/public/avm/fixtures/initializers.d.ts +0 -42
  121. package/dest/public/avm/fixtures/initializers.d.ts.map +0 -1
  122. package/dest/public/avm/fixtures/initializers.js +0 -45
  123. package/dest/public/avm/fixtures/utils.d.ts +0 -39
  124. package/dest/public/avm/fixtures/utils.d.ts.map +0 -1
  125. package/dest/public/avm/index.d.ts +0 -2
  126. package/dest/public/avm/index.d.ts.map +0 -1
  127. package/dest/public/avm/index.js +0 -1
  128. package/dest/public/avm/opcodes/accrued_substate.d.ts +0 -74
  129. package/dest/public/avm/opcodes/accrued_substate.d.ts.map +0 -1
  130. package/dest/public/avm/opcodes/accrued_substate.js +0 -254
  131. package/dest/public/avm/opcodes/addressing_mode.d.ts +0 -31
  132. package/dest/public/avm/opcodes/addressing_mode.d.ts.map +0 -1
  133. package/dest/public/avm/opcodes/addressing_mode.js +0 -94
  134. package/dest/public/avm/opcodes/arithmetic.d.ts +0 -49
  135. package/dest/public/avm/opcodes/arithmetic.d.ts.map +0 -1
  136. package/dest/public/avm/opcodes/arithmetic.js +0 -97
  137. package/dest/public/avm/opcodes/bitwise.d.ts +0 -42
  138. package/dest/public/avm/opcodes/bitwise.d.ts.map +0 -1
  139. package/dest/public/avm/opcodes/bitwise.js +0 -99
  140. package/dest/public/avm/opcodes/comparators.d.ts +0 -25
  141. package/dest/public/avm/opcodes/comparators.d.ts.map +0 -1
  142. package/dest/public/avm/opcodes/comparators.js +0 -43
  143. package/dest/public/avm/opcodes/contract.d.ts +0 -21
  144. package/dest/public/avm/opcodes/contract.d.ts.map +0 -1
  145. package/dest/public/avm/opcodes/contract.js +0 -69
  146. package/dest/public/avm/opcodes/control_flow.d.ts +0 -41
  147. package/dest/public/avm/opcodes/control_flow.d.ts.map +0 -1
  148. package/dest/public/avm/opcodes/control_flow.js +0 -107
  149. package/dest/public/avm/opcodes/conversion.d.ts +0 -18
  150. package/dest/public/avm/opcodes/conversion.d.ts.map +0 -1
  151. package/dest/public/avm/opcodes/conversion.js +0 -333
  152. package/dest/public/avm/opcodes/ec_add.d.ts +0 -17
  153. package/dest/public/avm/opcodes/ec_add.d.ts.map +0 -1
  154. package/dest/public/avm/opcodes/ec_add.js +0 -79
  155. package/dest/public/avm/opcodes/environment_getters.d.ts +0 -28
  156. package/dest/public/avm/opcodes/environment_getters.d.ts.map +0 -1
  157. package/dest/public/avm/opcodes/environment_getters.js +0 -77
  158. package/dest/public/avm/opcodes/external_calls.d.ts +0 -59
  159. package/dest/public/avm/opcodes/external_calls.d.ts.map +0 -1
  160. package/dest/public/avm/opcodes/external_calls.js +0 -210
  161. package/dest/public/avm/opcodes/hashing.d.ts +0 -36
  162. package/dest/public/avm/opcodes/hashing.d.ts.map +0 -1
  163. package/dest/public/avm/opcodes/hashing.js +0 -119
  164. package/dest/public/avm/opcodes/index.d.ts +0 -16
  165. package/dest/public/avm/opcodes/index.d.ts.map +0 -1
  166. package/dest/public/avm/opcodes/index.js +0 -15
  167. package/dest/public/avm/opcodes/instruction.d.ts +0 -74
  168. package/dest/public/avm/opcodes/instruction.d.ts.map +0 -1
  169. package/dest/public/avm/opcodes/instruction.js +0 -95
  170. package/dest/public/avm/opcodes/instruction_impl.d.ts +0 -19
  171. package/dest/public/avm/opcodes/instruction_impl.d.ts.map +0 -1
  172. package/dest/public/avm/opcodes/instruction_impl.js +0 -30
  173. package/dest/public/avm/opcodes/memory.d.ts +0 -74
  174. package/dest/public/avm/opcodes/memory.d.ts.map +0 -1
  175. package/dest/public/avm/opcodes/memory.js +0 -257
  176. package/dest/public/avm/opcodes/misc.d.ts +0 -18
  177. package/dest/public/avm/opcodes/misc.d.ts.map +0 -1
  178. package/dest/public/avm/opcodes/misc.js +0 -73
  179. package/dest/public/avm/opcodes/storage.d.ts +0 -25
  180. package/dest/public/avm/opcodes/storage.d.ts.map +0 -1
  181. package/dest/public/avm/opcodes/storage.js +0 -78
  182. package/dest/public/avm/revert_reason.d.ts +0 -18
  183. package/dest/public/avm/revert_reason.d.ts.map +0 -1
  184. package/dest/public/avm/revert_reason.js +0 -39
  185. package/dest/public/avm/serialization/buffer_cursor.d.ts +0 -26
  186. package/dest/public/avm/serialization/buffer_cursor.d.ts.map +0 -1
  187. package/dest/public/avm/serialization/buffer_cursor.js +0 -99
  188. package/dest/public/avm/serialization/bytecode_serialization.d.ts +0 -17
  189. package/dest/public/avm/serialization/bytecode_serialization.d.ts.map +0 -1
  190. package/dest/public/avm/serialization/bytecode_serialization.js +0 -336
  191. package/dest/public/avm/serialization/instruction_serialization.d.ts +0 -114
  192. package/dest/public/avm/serialization/instruction_serialization.d.ts.map +0 -1
  193. package/dest/public/avm/serialization/instruction_serialization.js +0 -261
  194. package/dest/public/avm/test_utils.d.ts +0 -15
  195. package/dest/public/avm/test_utils.d.ts.map +0 -1
  196. package/dest/public/avm/test_utils.js +0 -44
  197. package/dest/public/debug_fn_name.d.ts +0 -18
  198. package/dest/public/debug_fn_name.d.ts.map +0 -1
  199. package/dest/public/debug_fn_name.js +0 -37
  200. package/dest/public/fixtures/custom_bytecode_tests.d.ts +0 -19
  201. package/dest/public/fixtures/custom_bytecode_tests.d.ts.map +0 -1
  202. package/dest/public/fixtures/custom_bytecode_tests.js +0 -263
  203. package/dest/public/fixtures/minimal_public_tx.d.ts +0 -4
  204. package/dest/public/fixtures/minimal_public_tx.d.ts.map +0 -1
  205. package/dest/public/fixtures/minimal_public_tx.js +0 -19
  206. package/dest/public/fixtures/opcode_spammer.d.ts +0 -122
  207. package/dest/public/fixtures/opcode_spammer.d.ts.map +0 -1
  208. package/dest/public/fixtures/opcode_spammer.js +0 -1645
  209. package/dest/public/hinting_db_sources.d.ts +0 -80
  210. package/dest/public/hinting_db_sources.d.ts.map +0 -1
  211. package/dest/public/hinting_db_sources.js +0 -356
  212. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +0 -19
  213. package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +0 -1
  214. package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +0 -99
  215. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +0 -53
  216. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +0 -1
  217. package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +0 -131
  218. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts +0 -42
  219. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts.map +0 -1
  220. package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.js +0 -86
  221. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +0 -30
  222. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +0 -1
  223. package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +0 -171
  224. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts +0 -23
  225. package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts.map +0 -1
  226. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts +0 -31
  227. package/dest/public/public_tx_simulator/measured_public_tx_simulator.d.ts.map +0 -1
  228. package/dest/public/public_tx_simulator/measured_public_tx_simulator.js +0 -51
  229. package/dest/public/public_tx_simulator/public_tx_context.d.ts +0 -135
  230. package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +0 -1
  231. package/dest/public/public_tx_simulator/public_tx_context.js +0 -298
  232. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts +0 -21
  233. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.d.ts.map +0 -1
  234. package/dest/public/public_tx_simulator/telemetry_public_tx_simulator.js +0 -415
  235. package/dest/public/side_effect_trace.d.ts +0 -87
  236. package/dest/public/side_effect_trace.d.ts.map +0 -1
  237. package/dest/public/side_effect_trace.js +0 -199
  238. package/dest/public/side_effect_trace_interface.d.ts +0 -22
  239. package/dest/public/side_effect_trace_interface.d.ts.map +0 -1
  240. package/dest/public/side_effect_trace_interface.js +0 -1
  241. package/dest/public/state_manager/index.d.ts +0 -2
  242. package/dest/public/state_manager/index.d.ts.map +0 -1
  243. package/dest/public/state_manager/index.js +0 -1
  244. package/dest/public/state_manager/nullifiers.d.ts +0 -61
  245. package/dest/public/state_manager/nullifiers.d.ts.map +0 -1
  246. package/dest/public/state_manager/nullifiers.js +0 -92
  247. package/dest/public/state_manager/public_storage.d.ts +0 -66
  248. package/dest/public/state_manager/public_storage.d.ts.map +0 -1
  249. package/dest/public/state_manager/public_storage.js +0 -145
  250. package/dest/public/state_manager/state_manager.d.ts +0 -170
  251. package/dest/public/state_manager/state_manager.d.ts.map +0 -1
  252. package/dest/public/state_manager/state_manager.js +0 -402
  253. package/src/public/avm/avm_context.ts +0 -61
  254. package/src/public/avm/avm_contract_call_result.ts +0 -69
  255. package/src/public/avm/avm_execution_environment.ts +0 -51
  256. package/src/public/avm/avm_gas.ts +0 -183
  257. package/src/public/avm/avm_machine_state.ts +0 -170
  258. package/src/public/avm/avm_memory_types.ts +0 -440
  259. package/src/public/avm/avm_simulator.ts +0 -279
  260. package/src/public/avm/avm_simulator_interface.ts +0 -8
  261. package/src/public/avm/calldata.ts +0 -101
  262. package/src/public/avm/errors.ts +0 -177
  263. package/src/public/avm/fixtures/avm_simulation_tester.ts +0 -122
  264. package/src/public/avm/fixtures/initializers.ts +0 -103
  265. package/src/public/avm/index.ts +0 -1
  266. package/src/public/avm/opcodes/accrued_substate.ts +0 -285
  267. package/src/public/avm/opcodes/addressing_mode.ts +0 -111
  268. package/src/public/avm/opcodes/arithmetic.ts +0 -129
  269. package/src/public/avm/opcodes/bitwise.ts +0 -113
  270. package/src/public/avm/opcodes/comparators.ts +0 -55
  271. package/src/public/avm/opcodes/contract.ts +0 -76
  272. package/src/public/avm/opcodes/control_flow.ts +0 -123
  273. package/src/public/avm/opcodes/conversion.ts +0 -104
  274. package/src/public/avm/opcodes/ec_add.ts +0 -86
  275. package/src/public/avm/opcodes/environment_getters.ts +0 -87
  276. package/src/public/avm/opcodes/external_calls.ts +0 -262
  277. package/src/public/avm/opcodes/hashing.ts +0 -151
  278. package/src/public/avm/opcodes/index.ts +0 -15
  279. package/src/public/avm/opcodes/instruction.ts +0 -136
  280. package/src/public/avm/opcodes/instruction_impl.ts +0 -36
  281. package/src/public/avm/opcodes/memory.ts +0 -293
  282. package/src/public/avm/opcodes/misc.ts +0 -102
  283. package/src/public/avm/opcodes/storage.ts +0 -95
  284. package/src/public/avm/revert_reason.ts +0 -58
  285. package/src/public/avm/serialization/buffer_cursor.ts +0 -118
  286. package/src/public/avm/serialization/bytecode_serialization.ts +0 -215
  287. package/src/public/avm/serialization/instruction_serialization.ts +0 -249
  288. package/src/public/avm/test_utils.ts +0 -64
  289. package/src/public/debug_fn_name.ts +0 -52
  290. package/src/public/fixtures/custom_bytecode_tests.ts +0 -435
  291. package/src/public/fixtures/minimal_public_tx.ts +0 -26
  292. package/src/public/fixtures/opcode_spammer.ts +0 -1713
  293. package/src/public/hinting_db_sources.ts +0 -610
  294. package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +0 -125
  295. package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +0 -210
  296. package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +0 -134
  297. package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +0 -239
  298. package/src/public/public_tx_simulator/measured_public_tx_simulator.ts +0 -105
  299. package/src/public/public_tx_simulator/public_tx_context.ts +0 -482
  300. package/src/public/public_tx_simulator/telemetry_public_tx_simulator.ts +0 -63
  301. package/src/public/side_effect_trace.ts +0 -293
  302. package/src/public/side_effect_trace_interface.ts +0 -28
  303. package/src/public/state_manager/index.ts +0 -1
  304. package/src/public/state_manager/nullifiers.ts +0 -103
  305. package/src/public/state_manager/public_storage.ts +0 -174
  306. package/src/public/state_manager/state_manager.ts +0 -569
  307. /package/dest/public/avm/{fixtures → testing}/account_proof_fetcher.js +0 -0
  308. /package/dest/public/avm/{fixtures → testing}/base_avm_simulation_tester.js +0 -0
  309. /package/src/public/avm/{fixtures → testing}/account_proof.json +0 -0
  310. /package/src/public/avm/{fixtures → testing}/account_proof_fetcher.ts +0 -0
  311. /package/src/public/avm/{fixtures → testing}/base_avm_simulation_tester.ts +0 -0
@@ -1,99 +0,0 @@
1
- /*
2
- * A Buffer-like class that automatically advances the position.
3
- */ export class BufferCursor {
4
- _buffer;
5
- _position;
6
- constructor(_buffer, _position = 0){
7
- this._buffer = _buffer;
8
- this._position = _position;
9
- }
10
- position() {
11
- return this._position;
12
- }
13
- buffer() {
14
- return this._buffer;
15
- }
16
- eof() {
17
- return this._position === this._buffer.length;
18
- }
19
- bufferAtPosition() {
20
- return this._buffer.subarray(this._position);
21
- }
22
- advance(n) {
23
- this._position += n;
24
- }
25
- peekUint8() {
26
- const ret = this._buffer.readUint8(this._position);
27
- return ret;
28
- }
29
- readUint8() {
30
- const ret = this._buffer.readUint8(this._position);
31
- this._position += 1;
32
- return ret;
33
- }
34
- readUint16LE() {
35
- const ret = this._buffer.readUint16LE(this._position);
36
- this._position += 2;
37
- return ret;
38
- }
39
- readUint16BE() {
40
- const ret = this._buffer.readUint16BE(this._position);
41
- this._position += 2;
42
- return ret;
43
- }
44
- readUint32LE() {
45
- const ret = this._buffer.readUint32LE(this._position);
46
- this._position += 4;
47
- return ret;
48
- }
49
- readUint32BE() {
50
- const ret = this._buffer.readUint32BE(this._position);
51
- this._position += 4;
52
- return ret;
53
- }
54
- readBigInt64LE() {
55
- const ret = this._buffer.readBigInt64LE(this._position);
56
- this._position += 8;
57
- return ret;
58
- }
59
- readBigInt64BE() {
60
- const ret = this._buffer.readBigInt64BE(this._position);
61
- this._position += 8;
62
- return ret;
63
- }
64
- writeUint8(v) {
65
- const ret = this._buffer.writeUint8(v, this._position);
66
- this._position += 1;
67
- return ret;
68
- }
69
- writeUint16LE(v) {
70
- const ret = this._buffer.writeUint16LE(v, this._position);
71
- this._position += 2;
72
- return ret;
73
- }
74
- writeUint16BE(v) {
75
- const ret = this._buffer.writeUint16BE(v, this._position);
76
- this._position += 2;
77
- return ret;
78
- }
79
- writeUint32LE(v) {
80
- const ret = this._buffer.writeUint32LE(v, this._position);
81
- this._position += 4;
82
- return ret;
83
- }
84
- writeUint32BE(v) {
85
- const ret = this._buffer.writeUint32BE(v, this._position);
86
- this._position += 4;
87
- return ret;
88
- }
89
- writeBigInt64LE(v) {
90
- const ret = this._buffer.writeBigInt64LE(v, this._position);
91
- this._position += 8;
92
- return ret;
93
- }
94
- writeBigInt64BE(v) {
95
- const ret = this._buffer.writeBigInt64BE(v, this._position);
96
- this._position += 8;
97
- return ret;
98
- }
99
- }
@@ -1,17 +0,0 @@
1
- import { type Bufferable } from '@aztec/foundation/serialize';
2
- import { Instruction } from '../opcodes/index.js';
3
- import { BufferCursor } from './buffer_cursor.js';
4
- import { Opcode } from './instruction_serialization.js';
5
- export type InstructionDeserializer = (buf: BufferCursor | Buffer) => Instruction;
6
- export interface Deserializable {
7
- deserialize: InstructionDeserializer;
8
- }
9
- export type InstructionSet = Map<Opcode, InstructionDeserializer>;
10
- export declare const INSTRUCTION_SET: Map<Opcode, InstructionDeserializer>;
11
- /**
12
- * Serializes an array of instructions to bytecode.
13
- */
14
- export declare function encodeToBytecode(instructions: Bufferable[]): Buffer;
15
- export declare function decodeFromBytecode(bytecode: Buffer, instructionSet?: InstructionSet): Instruction[];
16
- export declare function decodeInstructionFromBytecode(bytecode: Buffer, pc: number, instructionSet?: InstructionSet): [Instruction, number];
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnl0ZWNvZGVfc2VyaWFsaXphdGlvbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vc2VyaWFsaXphdGlvbi9ieXRlY29kZV9zZXJpYWxpemF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLFVBQVUsRUFBcUIsTUFBTSw2QkFBNkIsQ0FBQztBQVVqRixPQUFPLEVBZ0JMLFdBQVcsRUFnQ1osTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFvQixNQUFNLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUxRSxNQUFNLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsWUFBWSxHQUFHLE1BQU0sS0FBSyxXQUFXLENBQUM7QUFFbEYsTUFBTSxXQUFXLGNBQWM7SUFDN0IsV0FBVyxFQUFFLHVCQUF1QixDQUFDO0NBQ3RDO0FBRUQsTUFBTSxNQUFNLGNBQWMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLHVCQUF1QixDQUFDLENBQUM7QUFDbEUsZUFBTyxNQUFNLGVBQWUsc0NBb0YxQixDQUFDO0FBRUg7O0dBRUc7QUFDSCx3QkFBZ0IsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sQ0FFbkU7QUFHRCx3QkFBZ0Isa0JBQWtCLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxjQUFjLEdBQUUsY0FBZ0MsR0FBRyxXQUFXLEVBQUUsQ0FTcEg7QUFHRCx3QkFBZ0IsNkJBQTZCLENBQzNDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLEVBQUUsRUFBRSxNQUFNLEVBQ1YsY0FBYyxHQUFFLGNBQWdDLEdBQy9DLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQW1DdkIifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"bytecode_serialization.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/serialization/bytecode_serialization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAqB,MAAM,6BAA6B,CAAC;AAUjF,OAAO,EAgBL,WAAW,EAgCZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAoB,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAE1E,MAAM,MAAM,uBAAuB,GAAG,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,KAAK,WAAW,CAAC;AAElF,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,uBAAuB,CAAC;CACtC;AAED,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;AAClE,eAAO,MAAM,eAAe,sCAoF1B,CAAC;AAEH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,UAAU,EAAE,GAAG,MAAM,CAEnE;AAGD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAE,cAAgC,GAAG,WAAW,EAAE,CASpH;AAGD,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,cAAc,GAAE,cAAgC,GAC/C,CAAC,WAAW,EAAE,MAAM,CAAC,CAmCvB"}
@@ -1,336 +0,0 @@
1
- import { serializeToBuffer } from '@aztec/foundation/serialize';
2
- import { AvmExecutionError, AvmParsingError, InvalidOpcodeError, InvalidProgramCounterError, InvalidTagValueError, duringInstrFetch } from '../errors.js';
3
- import { Add, And, Call, CalldataCopy, Cast, DebugLog, Div, EcAdd, EmitNoteHash, EmitNullifier, EmitPublicLog, Eq, FieldDiv, GetContractInstance, GetEnvVar, Instruction, InternalCall, InternalReturn, Jump, JumpI, KeccakF1600, L1ToL2MessageExists, Lt, Lte, Mov, Mul, Not, NoteHashExists, NullifierExists, Or, Poseidon2, Return, ReturndataCopy, ReturndataSize, Revert, SLoad, SStore, SendL2ToL1Message, Set, Sha256Compression, Shl, Shr, StaticCall, Sub, SuccessCopy, ToRadixBE, Xor } from '../opcodes/index.js';
4
- import { BufferCursor } from './buffer_cursor.js';
5
- import { MAX_OPCODE_VALUE, Opcode } from './instruction_serialization.js';
6
- export const INSTRUCTION_SET = new Map([
7
- [
8
- Opcode.ADD_8,
9
- Add.as(Add.wireFormat8).fromBuffer
10
- ],
11
- [
12
- Opcode.ADD_16,
13
- Add.as(Add.wireFormat16).fromBuffer
14
- ],
15
- [
16
- Opcode.SUB_8,
17
- Sub.as(Sub.wireFormat8).fromBuffer
18
- ],
19
- [
20
- Opcode.SUB_16,
21
- Sub.as(Sub.wireFormat16).fromBuffer
22
- ],
23
- [
24
- Opcode.MUL_8,
25
- Mul.as(Mul.wireFormat8).fromBuffer
26
- ],
27
- [
28
- Opcode.MUL_16,
29
- Mul.as(Mul.wireFormat16).fromBuffer
30
- ],
31
- [
32
- Opcode.DIV_8,
33
- Div.as(Div.wireFormat8).fromBuffer
34
- ],
35
- [
36
- Opcode.DIV_16,
37
- Div.as(Div.wireFormat16).fromBuffer
38
- ],
39
- [
40
- Opcode.FDIV_8,
41
- FieldDiv.as(FieldDiv.wireFormat8).fromBuffer
42
- ],
43
- [
44
- Opcode.FDIV_16,
45
- FieldDiv.as(FieldDiv.wireFormat16).fromBuffer
46
- ],
47
- [
48
- Opcode.EQ_8,
49
- Eq.as(Eq.wireFormat8).fromBuffer
50
- ],
51
- [
52
- Opcode.EQ_16,
53
- Eq.as(Eq.wireFormat16).fromBuffer
54
- ],
55
- [
56
- Opcode.LT_8,
57
- Lt.as(Lt.wireFormat8).fromBuffer
58
- ],
59
- [
60
- Opcode.LT_16,
61
- Lt.as(Lt.wireFormat16).fromBuffer
62
- ],
63
- [
64
- Opcode.LTE_8,
65
- Lte.as(Lte.wireFormat8).fromBuffer
66
- ],
67
- [
68
- Opcode.LTE_16,
69
- Lte.as(Lte.wireFormat16).fromBuffer
70
- ],
71
- [
72
- Opcode.AND_8,
73
- And.as(And.wireFormat8).fromBuffer
74
- ],
75
- [
76
- Opcode.AND_16,
77
- And.as(And.wireFormat16).fromBuffer
78
- ],
79
- [
80
- Opcode.OR_8,
81
- Or.as(Or.wireFormat8).fromBuffer
82
- ],
83
- [
84
- Opcode.OR_16,
85
- Or.as(Or.wireFormat16).fromBuffer
86
- ],
87
- [
88
- Opcode.XOR_8,
89
- Xor.as(Xor.wireFormat8).fromBuffer
90
- ],
91
- [
92
- Opcode.XOR_16,
93
- Xor.as(Xor.wireFormat16).fromBuffer
94
- ],
95
- [
96
- Opcode.NOT_8,
97
- Not.as(Not.wireFormat8).fromBuffer
98
- ],
99
- [
100
- Opcode.NOT_16,
101
- Not.as(Not.wireFormat16).fromBuffer
102
- ],
103
- [
104
- Opcode.SHL_8,
105
- Shl.as(Shl.wireFormat8).fromBuffer
106
- ],
107
- [
108
- Opcode.SHL_16,
109
- Shl.as(Shl.wireFormat16).fromBuffer
110
- ],
111
- [
112
- Opcode.SHR_8,
113
- Shr.as(Shr.wireFormat8).fromBuffer
114
- ],
115
- [
116
- Opcode.SHR_16,
117
- Shr.as(Shr.wireFormat16).fromBuffer
118
- ],
119
- [
120
- Opcode.CAST_8,
121
- Cast.as(Cast.wireFormat8).fromBuffer
122
- ],
123
- [
124
- Opcode.CAST_16,
125
- Cast.as(Cast.wireFormat16).fromBuffer
126
- ],
127
- // Execution Environment
128
- [
129
- Opcode.GETENVVAR_16,
130
- GetEnvVar.as(GetEnvVar.wireFormat16).fromBuffer
131
- ],
132
- [
133
- CalldataCopy.opcode,
134
- Instruction.fromBuffer.bind(CalldataCopy)
135
- ],
136
- [
137
- SuccessCopy.opcode,
138
- Instruction.fromBuffer.bind(SuccessCopy)
139
- ],
140
- [
141
- Opcode.RETURNDATASIZE,
142
- Instruction.fromBuffer.bind(ReturndataSize)
143
- ],
144
- [
145
- Opcode.RETURNDATACOPY,
146
- Instruction.fromBuffer.bind(ReturndataCopy)
147
- ],
148
- // Machine State - Internal Control Flow
149
- [
150
- Jump.opcode,
151
- Instruction.fromBuffer.bind(Jump)
152
- ],
153
- [
154
- JumpI.opcode,
155
- Instruction.fromBuffer.bind(JumpI)
156
- ],
157
- [
158
- InternalCall.opcode,
159
- Instruction.fromBuffer.bind(InternalCall)
160
- ],
161
- [
162
- InternalReturn.opcode,
163
- Instruction.fromBuffer.bind(InternalReturn)
164
- ],
165
- [
166
- Opcode.SET_8,
167
- Set.as(Set.wireFormat8).fromBuffer
168
- ],
169
- [
170
- Opcode.SET_16,
171
- Set.as(Set.wireFormat16).fromBuffer
172
- ],
173
- [
174
- Opcode.SET_32,
175
- Set.as(Set.wireFormat32).fromBuffer
176
- ],
177
- [
178
- Opcode.SET_64,
179
- Set.as(Set.wireFormat64).fromBuffer
180
- ],
181
- [
182
- Opcode.SET_128,
183
- Set.as(Set.wireFormat128).fromBuffer
184
- ],
185
- [
186
- Opcode.SET_FF,
187
- Set.as(Set.wireFormatFF).fromBuffer
188
- ],
189
- [
190
- Opcode.MOV_8,
191
- Mov.as(Mov.wireFormat8).fromBuffer
192
- ],
193
- [
194
- Opcode.MOV_16,
195
- Mov.as(Mov.wireFormat16).fromBuffer
196
- ],
197
- // World State
198
- [
199
- SLoad.opcode,
200
- Instruction.fromBuffer.bind(SLoad)
201
- ],
202
- [
203
- SStore.opcode,
204
- Instruction.fromBuffer.bind(SStore)
205
- ],
206
- [
207
- NoteHashExists.opcode,
208
- Instruction.fromBuffer.bind(NoteHashExists)
209
- ],
210
- [
211
- EmitNoteHash.opcode,
212
- Instruction.fromBuffer.bind(EmitNoteHash)
213
- ],
214
- [
215
- NullifierExists.opcode,
216
- Instruction.fromBuffer.bind(NullifierExists)
217
- ],
218
- [
219
- EmitNullifier.opcode,
220
- Instruction.fromBuffer.bind(EmitNullifier)
221
- ],
222
- [
223
- L1ToL2MessageExists.opcode,
224
- Instruction.fromBuffer.bind(L1ToL2MessageExists)
225
- ],
226
- // Accrued Substate
227
- [
228
- EmitPublicLog.opcode,
229
- Instruction.fromBuffer.bind(EmitPublicLog)
230
- ],
231
- [
232
- SendL2ToL1Message.opcode,
233
- Instruction.fromBuffer.bind(SendL2ToL1Message)
234
- ],
235
- [
236
- GetContractInstance.opcode,
237
- Instruction.fromBuffer.bind(GetContractInstance)
238
- ],
239
- // Control Flow - Contract Calls
240
- [
241
- Call.opcode,
242
- Instruction.fromBuffer.bind(Call)
243
- ],
244
- [
245
- StaticCall.opcode,
246
- Instruction.fromBuffer.bind(StaticCall)
247
- ],
248
- [
249
- Return.opcode,
250
- Instruction.fromBuffer.bind(Return)
251
- ],
252
- [
253
- Opcode.REVERT_8,
254
- Revert.as(Revert.wireFormat8).fromBuffer
255
- ],
256
- [
257
- Opcode.REVERT_16,
258
- Revert.as(Revert.wireFormat16).fromBuffer
259
- ],
260
- // Misc
261
- [
262
- DebugLog.opcode,
263
- Instruction.fromBuffer.bind(DebugLog)
264
- ],
265
- // Gadgets
266
- [
267
- EcAdd.opcode,
268
- Instruction.fromBuffer.bind(EcAdd)
269
- ],
270
- [
271
- Poseidon2.opcode,
272
- Instruction.fromBuffer.bind(Poseidon2)
273
- ],
274
- [
275
- Sha256Compression.opcode,
276
- Instruction.fromBuffer.bind(Sha256Compression)
277
- ],
278
- [
279
- KeccakF1600.opcode,
280
- Instruction.fromBuffer.bind(KeccakF1600)
281
- ],
282
- // Conversions
283
- [
284
- ToRadixBE.opcode,
285
- Instruction.fromBuffer.bind(ToRadixBE)
286
- ]
287
- ]);
288
- /**
289
- * Serializes an array of instructions to bytecode.
290
- */ export function encodeToBytecode(instructions) {
291
- return serializeToBuffer(instructions);
292
- }
293
- // For testing only
294
- export function decodeFromBytecode(bytecode, instructionSet = INSTRUCTION_SET) {
295
- const instructions = [];
296
- let pc = 0;
297
- while(pc < bytecode.length){
298
- const [instruction, bytesConsumed] = decodeInstructionFromBytecode(bytecode, pc, instructionSet);
299
- instructions.push(instruction);
300
- pc += bytesConsumed;
301
- }
302
- return instructions;
303
- }
304
- // Returns the instruction and the number of bytes consumed.
305
- export function decodeInstructionFromBytecode(bytecode, pc, instructionSet = INSTRUCTION_SET) {
306
- if (pc >= bytecode.length) {
307
- throw new InvalidProgramCounterError(pc, bytecode.length - 1);
308
- }
309
- try {
310
- const cursor = new BufferCursor(bytecode, pc);
311
- const startingPosition = cursor.position();
312
- const opcode = cursor.bufferAtPosition().readUint8(); // peek.
313
- if (opcode > MAX_OPCODE_VALUE) {
314
- throw new InvalidOpcodeError(`Opcode ${opcode} (0x${opcode.toString(16)}) value is not in the range of valid opcodes (at PC ${pc}).`);
315
- }
316
- const instructionDeserializerOrUndef = instructionSet.get(opcode);
317
- if (instructionDeserializerOrUndef === undefined) {
318
- throw new InvalidOpcodeError(`Opcode ${Opcode[opcode]} (0x${opcode.toString(16)}) is not implemented`);
319
- }
320
- const instructionDeserializer = instructionDeserializerOrUndef;
321
- const instruction = instructionDeserializer(cursor);
322
- return [
323
- instruction,
324
- cursor.position() - startingPosition
325
- ];
326
- } catch (error) {
327
- if (error instanceof InvalidTagValueError || error instanceof InvalidOpcodeError) {
328
- throw duringInstrFetch(error, pc);
329
- } else if (error instanceof AvmExecutionError) {
330
- throw new AvmParsingError(`Instruction parsing error at pc ${pc}: ${error.message}`);
331
- } else {
332
- const msg = error instanceof Error ? `: ${error.message}` : '';
333
- throw new AvmParsingError(`Instruction fetching error at pc ${pc}${msg}`);
334
- }
335
- }
336
- }
@@ -1,114 +0,0 @@
1
- import { BufferCursor } from './buffer_cursor.js';
2
- /**
3
- * All AVM opcodes. (Keep in sync with cpp counterpart code avm_opcode.hpp and rs in opcodes.rs).
4
- * Source: https://yp-aztec.netlify.app/docs/public-vm/instruction-set
5
- */
6
- export declare enum Opcode {
7
- ADD_8 = 0,
8
- ADD_16 = 1,
9
- SUB_8 = 2,
10
- SUB_16 = 3,
11
- MUL_8 = 4,
12
- MUL_16 = 5,
13
- DIV_8 = 6,
14
- DIV_16 = 7,
15
- FDIV_8 = 8,
16
- FDIV_16 = 9,
17
- EQ_8 = 10,
18
- EQ_16 = 11,
19
- LT_8 = 12,
20
- LT_16 = 13,
21
- LTE_8 = 14,
22
- LTE_16 = 15,
23
- AND_8 = 16,
24
- AND_16 = 17,
25
- OR_8 = 18,
26
- OR_16 = 19,
27
- XOR_8 = 20,
28
- XOR_16 = 21,
29
- NOT_8 = 22,
30
- NOT_16 = 23,
31
- SHL_8 = 24,
32
- SHL_16 = 25,
33
- SHR_8 = 26,
34
- SHR_16 = 27,
35
- CAST_8 = 28,
36
- CAST_16 = 29,
37
- GETENVVAR_16 = 30,
38
- CALLDATACOPY = 31,
39
- SUCCESSCOPY = 32,
40
- RETURNDATASIZE = 33,
41
- RETURNDATACOPY = 34,
42
- JUMP_32 = 35,
43
- JUMPI_32 = 36,
44
- INTERNALCALL = 37,
45
- INTERNALRETURN = 38,
46
- SET_8 = 39,
47
- SET_16 = 40,
48
- SET_32 = 41,
49
- SET_64 = 42,
50
- SET_128 = 43,
51
- SET_FF = 44,
52
- MOV_8 = 45,
53
- MOV_16 = 46,
54
- SLOAD = 47,
55
- SSTORE = 48,
56
- NOTEHASHEXISTS = 49,
57
- EMITNOTEHASH = 50,
58
- NULLIFIEREXISTS = 51,
59
- EMITNULLIFIER = 52,
60
- L1TOL2MSGEXISTS = 53,
61
- GETCONTRACTINSTANCE = 54,
62
- EMITPUBLICLOG = 55,
63
- SENDL2TOL1MSG = 56,
64
- CALL = 57,
65
- STATICCALL = 58,
66
- RETURN = 59,
67
- REVERT_8 = 60,
68
- REVERT_16 = 61,
69
- DEBUGLOG = 62,
70
- POSEIDON2 = 63,
71
- SHA256COMPRESSION = 64,
72
- KECCAKF1600 = 65,
73
- ECADD = 66,
74
- TORADIXBE = 67
75
- }
76
- export declare const MAX_OPCODE_VALUE: number;
77
- export declare enum OperandType {
78
- UINT8 = 0,
79
- UINT16 = 1,
80
- UINT32 = 2,
81
- UINT64 = 3,
82
- UINT128 = 4,
83
- FF = 5,
84
- TAG = 6
85
- }
86
- type DeserializedValue = number | bigint;
87
- /**
88
- * Returns the size of an operand in bytes.
89
- * Should not be called with unknown operand types.
90
- * @param operandType
91
- * @returns number size in bytes
92
- * @throws AssertionError if the operand type is unknown
93
- */
94
- export declare function getOperandSize(operandType: OperandType): number;
95
- /**
96
- * Reads an array of operands from a buffer.
97
- * @param cursor Buffer to read from. Might be longer than needed.
98
- * @param operands Specification of the operand types.
99
- * @returns An array as big as {@code operands}, with the converted TS values.
100
- */
101
- export declare function deserialize(cursor: BufferCursor | Buffer, operands: OperandType[]): DeserializedValue[];
102
- /**
103
- * Serializes a class using the specified operand types.
104
- * More specifically, this serializes {@code [cls.constructor.opcode, ...Object.values(cls)]}.
105
- * Observe in particular that:
106
- * (1) the first operand type specified must correspond to the opcode;
107
- * (2) the rest of the operand types must be specified in the order returned by {@code Object.values()}.
108
- * @param operands Type specification for the values to be serialized.
109
- * @param cls The class to be serialized.
110
- * @returns
111
- */
112
- export declare function serializeAs(operands: OperandType[], opcode: Opcode, cls: any): Buffer;
113
- export {};
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1Y3Rpb25fc2VyaWFsaXphdGlvbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vc2VyaWFsaXphdGlvbi9pbnN0cnVjdGlvbl9zZXJpYWxpemF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRDs7O0dBR0c7QUFDSCxvQkFBWSxNQUFNO0lBRWhCLEtBQUssSUFBQTtJQUNMLE1BQU0sSUFBQTtJQUNOLEtBQUssSUFBQTtJQUNMLE1BQU0sSUFBQTtJQUNOLEtBQUssSUFBQTtJQUNMLE1BQU0sSUFBQTtJQUNOLEtBQUssSUFBQTtJQUNMLE1BQU0sSUFBQTtJQUNOLE1BQU0sSUFBQTtJQUNOLE9BQU8sSUFBQTtJQUNQLElBQUksS0FBQTtJQUNKLEtBQUssS0FBQTtJQUNMLElBQUksS0FBQTtJQUNKLEtBQUssS0FBQTtJQUNMLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUNOLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUNOLElBQUksS0FBQTtJQUNKLEtBQUssS0FBQTtJQUNMLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUNOLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUNOLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUNOLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUNOLE1BQU0sS0FBQTtJQUNOLE9BQU8sS0FBQTtJQUVQLFlBQVksS0FBQTtJQUNaLFlBQVksS0FBQTtJQUNaLFdBQVcsS0FBQTtJQUNYLGNBQWMsS0FBQTtJQUNkLGNBQWMsS0FBQTtJQUVkLE9BQU8sS0FBQTtJQUNQLFFBQVEsS0FBQTtJQUNSLFlBQVksS0FBQTtJQUNaLGNBQWMsS0FBQTtJQUVkLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUNOLE1BQU0sS0FBQTtJQUNOLE1BQU0sS0FBQTtJQUNOLE9BQU8sS0FBQTtJQUNQLE1BQU0sS0FBQTtJQUNOLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUVOLEtBQUssS0FBQTtJQUNMLE1BQU0sS0FBQTtJQUNOLGNBQWMsS0FBQTtJQUNkLFlBQVksS0FBQTtJQUNaLGVBQWUsS0FBQTtJQUNmLGFBQWEsS0FBQTtJQUNiLGVBQWUsS0FBQTtJQUNmLG1CQUFtQixLQUFBO0lBQ25CLGFBQWEsS0FBQTtJQUNiLGFBQWEsS0FBQTtJQUViLElBQUksS0FBQTtJQUNKLFVBQVUsS0FBQTtJQUNWLE1BQU0sS0FBQTtJQUNOLFFBQVEsS0FBQTtJQUNSLFNBQVMsS0FBQTtJQUVULFFBQVEsS0FBQTtJQUVSLFNBQVMsS0FBQTtJQUNULGlCQUFpQixLQUFBO0lBQ2pCLFdBQVcsS0FBQTtJQUNYLEtBQUssS0FBQTtJQUVMLFNBQVMsS0FBQTtDQUNWO0FBRUQsZUFBTyxNQUFNLGdCQUFnQixRQUk1QixDQUFDO0FBSUYsb0JBQVksV0FBVztJQUNyQixLQUFLLElBQUE7SUFDTCxNQUFNLElBQUE7SUFDTixNQUFNLElBQUE7SUFDTixNQUFNLElBQUE7SUFDTixPQUFPLElBQUE7SUFDUCxFQUFFLElBQUE7SUFDRixHQUFHLElBQUE7Q0FDSjtBQUdELEtBQUssaUJBQWlCLEdBQUcsTUFBTSxHQUFHLE1BQU0sQ0FBQztBQWdCekM7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLGNBQWMsQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLE1BQU0sQ0FHL0Q7QUFrREQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsV0FBVyxDQUFDLE1BQU0sRUFBRSxZQUFZLEdBQUcsTUFBTSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsR0FBRyxpQkFBaUIsRUFBRSxDQXlCdkc7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCx3QkFBZ0IsV0FBVyxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEdBQUcsTUFBTSxDQW1CckYifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"instruction_serialization.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/serialization/instruction_serialization.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;GAGG;AACH,oBAAY,MAAM;IAEhB,KAAK,IAAA;IACL,MAAM,IAAA;IACN,KAAK,IAAA;IACL,MAAM,IAAA;IACN,KAAK,IAAA;IACL,MAAM,IAAA;IACN,KAAK,IAAA;IACL,MAAM,IAAA;IACN,MAAM,IAAA;IACN,OAAO,IAAA;IACP,IAAI,KAAA;IACJ,KAAK,KAAA;IACL,IAAI,KAAA;IACJ,KAAK,KAAA;IACL,KAAK,KAAA;IACL,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,IAAI,KAAA;IACJ,KAAK,KAAA;IACL,KAAK,KAAA;IACL,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,MAAM,KAAA;IACN,OAAO,KAAA;IAEP,YAAY,KAAA;IACZ,YAAY,KAAA;IACZ,WAAW,KAAA;IACX,cAAc,KAAA;IACd,cAAc,KAAA;IAEd,OAAO,KAAA;IACP,QAAQ,KAAA;IACR,YAAY,KAAA;IACZ,cAAc,KAAA;IAEd,KAAK,KAAA;IACL,MAAM,KAAA;IACN,MAAM,KAAA;IACN,MAAM,KAAA;IACN,OAAO,KAAA;IACP,MAAM,KAAA;IACN,KAAK,KAAA;IACL,MAAM,KAAA;IAEN,KAAK,KAAA;IACL,MAAM,KAAA;IACN,cAAc,KAAA;IACd,YAAY,KAAA;IACZ,eAAe,KAAA;IACf,aAAa,KAAA;IACb,eAAe,KAAA;IACf,mBAAmB,KAAA;IACnB,aAAa,KAAA;IACb,aAAa,KAAA;IAEb,IAAI,KAAA;IACJ,UAAU,KAAA;IACV,MAAM,KAAA;IACN,QAAQ,KAAA;IACR,SAAS,KAAA;IAET,QAAQ,KAAA;IAER,SAAS,KAAA;IACT,iBAAiB,KAAA;IACjB,WAAW,KAAA;IACX,KAAK,KAAA;IAEL,SAAS,KAAA;CACV;AAED,eAAO,MAAM,gBAAgB,QAI5B,CAAC;AAIF,oBAAY,WAAW;IACrB,KAAK,IAAA;IACL,MAAM,IAAA;IACN,MAAM,IAAA;IACN,MAAM,IAAA;IACN,OAAO,IAAA;IACP,EAAE,IAAA;IACF,GAAG,IAAA;CACJ;AAGD,KAAK,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;AAgBzC;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,CAG/D;AAkDD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,iBAAiB,EAAE,CAyBvG;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAmBrF"}