@aztec/simulator 0.74.0 → 0.75.0-commit.c03ba01a2a4122e43e90d5133ba017e54b90e9d2
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.
- package/dest/acvm/acvm.js +18 -21
- package/dest/acvm/acvm_types.js +3 -2
- package/dest/acvm/deserialize.js +9 -13
- package/dest/acvm/index.js +0 -1
- package/dest/acvm/oracle/index.js +0 -1
- package/dest/acvm/oracle/oracle.js +42 -23
- package/dest/acvm/oracle/typed_oracle.js +36 -38
- package/dest/acvm/serialize.js +7 -14
- package/dest/avm/avm_context.js +24 -27
- package/dest/avm/avm_contract_call_result.js +12 -7
- package/dest/avm/avm_execution_environment.js +10 -7
- package/dest/avm/avm_gas.js +93 -56
- package/dest/avm/avm_machine_state.js +60 -61
- package/dest/avm/avm_memory_types.js +166 -255
- package/dest/avm/avm_simulator.js +68 -47
- package/dest/avm/avm_tree.js +282 -276
- package/dest/avm/bytecode_utils.js +8 -6
- package/dest/avm/errors.js +46 -63
- package/dest/avm/fixtures/avm_simulation_tester.js +18 -17
- package/dest/avm/fixtures/base_avm_simulation_tester.js +21 -16
- package/dest/avm/fixtures/index.js +27 -26
- package/dest/avm/fixtures/simple_contract_data_source.js +9 -13
- package/dest/avm/index.js +0 -1
- package/dest/avm/journal/index.js +0 -1
- package/dest/avm/journal/journal.js +147 -200
- package/dest/avm/journal/nullifiers.js +43 -46
- package/dest/avm/journal/public_storage.js +73 -87
- package/dest/avm/opcodes/accrued_substate.js +140 -110
- package/dest/avm/opcodes/addressing_mode.js +29 -31
- package/dest/avm/opcodes/arithmetic.js +17 -15
- package/dest/avm/opcodes/bitwise.js +40 -26
- package/dest/avm/opcodes/comparators.js +12 -10
- package/dest/avm/opcodes/contract.js +31 -29
- package/dest/avm/opcodes/control_flow.js +47 -43
- package/dest/avm/opcodes/conversion.js +30 -26
- package/dest/avm/opcodes/ec_add.js +35 -34
- package/dest/avm/opcodes/environment_getters.js +33 -33
- package/dest/avm/opcodes/external_calls.js +83 -74
- package/dest/avm/opcodes/hashing.js +69 -61
- package/dest/avm/opcodes/index.js +0 -1
- package/dest/avm/opcodes/instruction.js +31 -40
- package/dest/avm/opcodes/instruction_impl.js +12 -15
- package/dest/avm/opcodes/memory.js +177 -156
- package/dest/avm/opcodes/misc.js +27 -25
- package/dest/avm/opcodes/multi_scalar_mul.js +43 -41
- package/dest/avm/opcodes/storage.js +28 -25
- package/dest/avm/serialization/buffer_cursor.js +4 -4
- package/dest/avm/serialization/bytecode_serialization.js +292 -89
- package/dest/avm/serialization/instruction_serialization.js +67 -28
- package/dest/avm/test_utils.js +6 -9
- package/dest/client/client_execution_context.js +197 -219
- package/dest/client/db_oracle.js +4 -7
- package/dest/client/execution_note_cache.js +80 -81
- package/dest/client/index.js +0 -1
- package/dest/client/pick_notes.js +27 -30
- package/dest/client/private_execution.js +13 -14
- package/dest/client/simulator.js +44 -48
- package/dest/client/unconstrained_execution.js +8 -11
- package/dest/client/view_data_oracle.js +130 -139
- package/dest/common/debug_fn_name.js +1 -4
- package/dest/common/errors.js +30 -39
- package/dest/common/hashed_values_cache.js +16 -20
- package/dest/common/index.js +0 -1
- package/dest/common/message_load_oracle_inputs.js +7 -7
- package/dest/common/simulation_provider.js +3 -6
- package/dest/common.js +0 -1
- package/dest/providers/acvm_native.js +46 -32
- package/dest/providers/acvm_wasm.js +18 -10
- package/dest/providers/acvm_wasm_with_blobs.js +2 -5
- package/dest/providers/factory.js +5 -5
- package/dest/providers/index.js +0 -1
- package/dest/public/bytecode_errors.js +1 -2
- package/dest/public/db_interfaces.js +1 -2
- package/dest/public/execution.js +2 -4
- package/dest/public/executor_metrics.js +16 -12
- package/dest/public/fee_payment.js +2 -5
- package/dest/public/fixtures/index.js +0 -1
- package/dest/public/fixtures/public_tx_simulation_tester.js +13 -17
- package/dest/public/fixtures/utils.js +11 -14
- package/dest/public/index.js +0 -1
- package/dest/public/public_db_sources.js +79 -87
- package/dest/public/public_processor.js +310 -306
- package/dest/public/public_processor_metrics.js +46 -27
- package/dest/public/public_tx_context.js +97 -118
- package/dest/public/public_tx_simulator.js +299 -314
- package/dest/public/side_effect_errors.js +1 -2
- package/dest/public/side_effect_trace.js +44 -71
- package/dest/public/side_effect_trace_interface.js +1 -2
- package/dest/public/unique_class_ids.js +22 -27
- package/dest/public/utils.js +16 -11
- package/dest/server.js +0 -1
- package/dest/stats/index.js +0 -1
- package/dest/stats/stats.js +1 -2
- package/dest/test/utils.js +5 -4
- package/package.json +11 -11
- package/src/acvm/oracle/typed_oracle.ts +34 -34
- package/src/avm/avm_machine_state.ts +18 -14
- package/src/avm/avm_memory_types.ts +43 -183
- package/src/avm/avm_simulator.ts +37 -11
- package/src/avm/opcodes/accrued_substate.ts +7 -21
- package/src/avm/opcodes/addressing_mode.ts +9 -2
- package/src/avm/opcodes/arithmetic.ts +1 -3
- package/src/avm/opcodes/bitwise.ts +2 -6
- package/src/avm/opcodes/comparators.ts +1 -3
- package/src/avm/opcodes/contract.ts +1 -3
- package/src/avm/opcodes/control_flow.ts +1 -9
- package/src/avm/opcodes/conversion.ts +1 -3
- package/src/avm/opcodes/ec_add.ts +1 -3
- package/src/avm/opcodes/environment_getters.ts +1 -3
- package/src/avm/opcodes/external_calls.ts +3 -6
- package/src/avm/opcodes/hashing.ts +3 -9
- package/src/avm/opcodes/memory.ts +6 -20
- package/src/avm/opcodes/misc.ts +1 -3
- package/src/avm/opcodes/multi_scalar_mul.ts +1 -7
- package/src/avm/opcodes/storage.ts +2 -6
- package/src/client/index.ts +2 -2
- package/dest/acvm/acvm.d.ts +0 -35
- package/dest/acvm/acvm.d.ts.map +0 -1
- package/dest/acvm/acvm_types.d.ts +0 -10
- package/dest/acvm/acvm_types.d.ts.map +0 -1
- package/dest/acvm/deserialize.d.ts +0 -36
- package/dest/acvm/deserialize.d.ts.map +0 -1
- package/dest/acvm/index.d.ts +0 -6
- package/dest/acvm/index.d.ts.map +0 -1
- package/dest/acvm/oracle/index.d.ts +0 -14
- package/dest/acvm/oracle/index.d.ts.map +0 -1
- package/dest/acvm/oracle/oracle.d.ts +0 -49
- package/dest/acvm/oracle/oracle.d.ts.map +0 -1
- package/dest/acvm/oracle/typed_oracle.d.ts +0 -75
- package/dest/acvm/oracle/typed_oracle.d.ts.map +0 -1
- package/dest/acvm/serialize.d.ts +0 -20
- package/dest/acvm/serialize.d.ts.map +0 -1
- package/dest/avm/avm_context.d.ts +0 -39
- package/dest/avm/avm_context.d.ts.map +0 -1
- package/dest/avm/avm_contract_call_result.d.ts +0 -30
- package/dest/avm/avm_contract_call_result.d.ts.map +0 -1
- package/dest/avm/avm_execution_environment.d.ts +0 -21
- package/dest/avm/avm_execution_environment.d.ts.map +0 -1
- package/dest/avm/avm_gas.d.ts +0 -60
- package/dest/avm/avm_gas.d.ts.map +0 -1
- package/dest/avm/avm_machine_state.d.ts +0 -93
- package/dest/avm/avm_machine_state.d.ts.map +0 -1
- package/dest/avm/avm_memory_types.d.ts +0 -310
- package/dest/avm/avm_memory_types.d.ts.map +0 -1
- package/dest/avm/avm_simulator.d.ts +0 -37
- package/dest/avm/avm_simulator.d.ts.map +0 -1
- package/dest/avm/avm_tree.d.ts +0 -281
- package/dest/avm/avm_tree.d.ts.map +0 -1
- package/dest/avm/bytecode_utils.d.ts +0 -5
- package/dest/avm/bytecode_utils.d.ts.map +0 -1
- package/dest/avm/errors.d.ts +0 -121
- package/dest/avm/errors.d.ts.map +0 -1
- package/dest/avm/fixtures/avm_simulation_tester.d.ts +0 -21
- package/dest/avm/fixtures/avm_simulation_tester.d.ts.map +0 -1
- package/dest/avm/fixtures/base_avm_simulation_tester.d.ts +0 -35
- package/dest/avm/fixtures/base_avm_simulation_tester.d.ts.map +0 -1
- package/dest/avm/fixtures/index.d.ts +0 -67
- package/dest/avm/fixtures/index.d.ts.map +0 -1
- package/dest/avm/fixtures/simple_contract_data_source.d.ts +0 -31
- package/dest/avm/fixtures/simple_contract_data_source.d.ts.map +0 -1
- package/dest/avm/index.d.ts +0 -4
- package/dest/avm/index.d.ts.map +0 -1
- package/dest/avm/journal/index.d.ts +0 -2
- package/dest/avm/journal/index.d.ts.map +0 -1
- package/dest/avm/journal/journal.d.ts +0 -176
- package/dest/avm/journal/journal.d.ts.map +0 -1
- package/dest/avm/journal/nullifiers.d.ts +0 -62
- package/dest/avm/journal/nullifiers.d.ts.map +0 -1
- package/dest/avm/journal/public_storage.d.ts +0 -66
- package/dest/avm/journal/public_storage.d.ts.map +0 -1
- package/dest/avm/opcodes/accrued_substate.d.ts +0 -75
- package/dest/avm/opcodes/accrued_substate.d.ts.map +0 -1
- package/dest/avm/opcodes/addressing_mode.d.ts +0 -27
- package/dest/avm/opcodes/addressing_mode.d.ts.map +0 -1
- package/dest/avm/opcodes/arithmetic.d.ts +0 -37
- package/dest/avm/opcodes/arithmetic.d.ts.map +0 -1
- package/dest/avm/opcodes/bitwise.d.ts +0 -50
- package/dest/avm/opcodes/bitwise.d.ts.map +0 -1
- package/dest/avm/opcodes/comparators.d.ts +0 -25
- package/dest/avm/opcodes/comparators.d.ts.map +0 -1
- package/dest/avm/opcodes/contract.d.ts +0 -21
- package/dest/avm/opcodes/contract.d.ts.map +0 -1
- package/dest/avm/opcodes/control_flow.d.ts +0 -41
- package/dest/avm/opcodes/control_flow.d.ts.map +0 -1
- package/dest/avm/opcodes/conversion.d.ts +0 -17
- package/dest/avm/opcodes/conversion.d.ts.map +0 -1
- package/dest/avm/opcodes/ec_add.d.ts +0 -19
- package/dest/avm/opcodes/ec_add.d.ts.map +0 -1
- package/dest/avm/opcodes/environment_getters.d.ts +0 -28
- package/dest/avm/opcodes/environment_getters.d.ts.map +0 -1
- package/dest/avm/opcodes/external_calls.d.ts +0 -50
- package/dest/avm/opcodes/external_calls.d.ts.map +0 -1
- package/dest/avm/opcodes/hashing.d.ts +0 -36
- package/dest/avm/opcodes/hashing.d.ts.map +0 -1
- package/dest/avm/opcodes/index.d.ts +0 -16
- package/dest/avm/opcodes/index.d.ts.map +0 -1
- package/dest/avm/opcodes/instruction.d.ts +0 -70
- package/dest/avm/opcodes/instruction.d.ts.map +0 -1
- package/dest/avm/opcodes/instruction_impl.d.ts +0 -19
- package/dest/avm/opcodes/instruction_impl.d.ts.map +0 -1
- package/dest/avm/opcodes/memory.d.ts +0 -74
- package/dest/avm/opcodes/memory.d.ts.map +0 -1
- package/dest/avm/opcodes/misc.d.ts +0 -17
- package/dest/avm/opcodes/misc.d.ts.map +0 -1
- package/dest/avm/opcodes/multi_scalar_mul.d.ts +0 -16
- package/dest/avm/opcodes/multi_scalar_mul.d.ts.map +0 -1
- package/dest/avm/opcodes/storage.d.ts +0 -24
- package/dest/avm/opcodes/storage.d.ts.map +0 -1
- package/dest/avm/serialization/buffer_cursor.d.ts +0 -28
- package/dest/avm/serialization/buffer_cursor.d.ts.map +0 -1
- package/dest/avm/serialization/bytecode_serialization.d.ts +0 -21
- package/dest/avm/serialization/bytecode_serialization.d.ts.map +0 -1
- package/dest/avm/serialization/instruction_serialization.d.ts +0 -105
- package/dest/avm/serialization/instruction_serialization.d.ts.map +0 -1
- package/dest/avm/test_utils.d.ts +0 -16
- package/dest/avm/test_utils.d.ts.map +0 -1
- package/dest/client/client_execution_context.d.ts +0 -214
- package/dest/client/client_execution_context.d.ts.map +0 -1
- package/dest/client/db_oracle.d.ts +0 -229
- package/dest/client/db_oracle.d.ts.map +0 -1
- package/dest/client/execution_note_cache.d.ts +0 -93
- package/dest/client/execution_note_cache.d.ts.map +0 -1
- package/dest/client/index.d.ts +0 -15
- package/dest/client/index.d.ts.map +0 -1
- package/dest/client/pick_notes.d.ts +0 -85
- package/dest/client/pick_notes.d.ts.map +0 -1
- package/dest/client/private_execution.d.ts +0 -19
- package/dest/client/private_execution.d.ts.map +0 -1
- package/dest/client/simulator.d.ts +0 -60
- package/dest/client/simulator.d.ts.map +0 -1
- package/dest/client/unconstrained_execution.d.ts +0 -10
- package/dest/client/unconstrained_execution.d.ts.map +0 -1
- package/dest/client/view_data_oracle.d.ts +0 -159
- package/dest/client/view_data_oracle.d.ts.map +0 -1
- package/dest/common/debug_fn_name.d.ts +0 -4
- package/dest/common/debug_fn_name.d.ts.map +0 -1
- package/dest/common/errors.d.ts +0 -54
- package/dest/common/errors.d.ts.map +0 -1
- package/dest/common/hashed_values_cache.d.ts +0 -28
- package/dest/common/hashed_values_cache.d.ts.map +0 -1
- package/dest/common/index.d.ts +0 -3
- package/dest/common/index.d.ts.map +0 -1
- package/dest/common/message_load_oracle_inputs.d.ts +0 -15
- package/dest/common/message_load_oracle_inputs.d.ts.map +0 -1
- package/dest/common/simulation_provider.d.ts +0 -19
- package/dest/common/simulation_provider.d.ts.map +0 -1
- package/dest/common.d.ts +0 -2
- package/dest/common.d.ts.map +0 -1
- package/dest/providers/acvm_native.d.ts +0 -40
- package/dest/providers/acvm_native.d.ts.map +0 -1
- package/dest/providers/acvm_wasm.d.ts +0 -15
- package/dest/providers/acvm_wasm.d.ts.map +0 -1
- package/dest/providers/acvm_wasm_with_blobs.d.ts +0 -19
- package/dest/providers/acvm_wasm_with_blobs.d.ts.map +0 -1
- package/dest/providers/factory.d.ts +0 -12
- package/dest/providers/factory.d.ts.map +0 -1
- package/dest/providers/index.d.ts +0 -5
- package/dest/providers/index.d.ts.map +0 -1
- package/dest/public/bytecode_errors.d.ts +0 -4
- package/dest/public/bytecode_errors.d.ts.map +0 -1
- package/dest/public/db_interfaces.d.ts +0 -105
- package/dest/public/db_interfaces.d.ts.map +0 -1
- package/dest/public/execution.d.ts +0 -102
- package/dest/public/execution.d.ts.map +0 -1
- package/dest/public/executor_metrics.d.ts +0 -13
- package/dest/public/executor_metrics.d.ts.map +0 -1
- package/dest/public/fee_payment.d.ts +0 -11
- package/dest/public/fee_payment.d.ts.map +0 -1
- package/dest/public/fixtures/index.d.ts +0 -3
- package/dest/public/fixtures/index.d.ts.map +0 -1
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts +0 -21
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +0 -1
- package/dest/public/fixtures/utils.d.ts +0 -17
- package/dest/public/fixtures/utils.d.ts.map +0 -1
- package/dest/public/index.d.ts +0 -9
- package/dest/public/index.d.ts.map +0 -1
- package/dest/public/public_db_sources.d.ts +0 -81
- package/dest/public/public_db_sources.d.ts.map +0 -1
- package/dest/public/public_processor.d.ts +0 -72
- package/dest/public/public_processor.d.ts.map +0 -1
- package/dest/public/public_processor_metrics.d.ts +0 -27
- package/dest/public/public_processor_metrics.d.ts.map +0 -1
- package/dest/public/public_tx_context.d.ts +0 -131
- package/dest/public/public_tx_context.d.ts.map +0 -1
- package/dest/public/public_tx_simulator.d.ts +0 -99
- package/dest/public/public_tx_simulator.d.ts.map +0 -1
- package/dest/public/side_effect_errors.d.ts +0 -4
- package/dest/public/side_effect_errors.d.ts.map +0 -1
- package/dest/public/side_effect_trace.d.ts +0 -126
- package/dest/public/side_effect_trace.d.ts.map +0 -1
- package/dest/public/side_effect_trace_interface.d.ts +0 -32
- package/dest/public/side_effect_trace_interface.d.ts.map +0 -1
- package/dest/public/unique_class_ids.d.ts +0 -37
- package/dest/public/unique_class_ids.d.ts.map +0 -1
- package/dest/public/utils.d.ts +0 -5
- package/dest/public/utils.d.ts.map +0 -1
- package/dest/server.d.ts +0 -6
- package/dest/server.d.ts.map +0 -1
- package/dest/stats/index.d.ts +0 -2
- package/dest/stats/index.d.ts.map +0 -1
- package/dest/stats/stats.d.ts +0 -4
- package/dest/stats/stats.d.ts.map +0 -1
- package/dest/test/utils.d.ts +0 -12
- package/dest/test/utils.d.ts.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"acvm_types.d.ts","sourceRoot":"","sources":["../../src/acvm/acvm_types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
-
import { type ACVMField, type ACVMWitness } from './acvm_types.js';
|
|
3
|
-
/**
|
|
4
|
-
* Converts an ACVM field to a Fr.
|
|
5
|
-
* @param field - The ACVM field to convert.
|
|
6
|
-
* @returns The Fr.
|
|
7
|
-
*/
|
|
8
|
-
export declare function fromACVMField(field: ACVMField): Fr;
|
|
9
|
-
/**
|
|
10
|
-
* Converts a field to a number.
|
|
11
|
-
* @param fr - The field to convert.
|
|
12
|
-
* @returns The number.
|
|
13
|
-
* TODO(#4102): Nuke this once block number is big int.
|
|
14
|
-
*/
|
|
15
|
-
export declare function frToNumber(fr: Fr): number;
|
|
16
|
-
/**
|
|
17
|
-
* Converts a field to a boolean.
|
|
18
|
-
* @param fr - The field to convert.
|
|
19
|
-
*/
|
|
20
|
-
export declare function frToBoolean(fr: Fr): boolean;
|
|
21
|
-
/**
|
|
22
|
-
* Converts a Noir BoundedVec of Fields into an Fr array. Note that BoundedVecs are structs, and therefore translated as
|
|
23
|
-
* two separate ACVMField arrays.
|
|
24
|
-
*
|
|
25
|
-
* @param storage The array with the BoundedVec's storage (i.e. BoundedVec::storage())
|
|
26
|
-
* @param length The length of the BoundedVec (i.e. BoundedVec::len())
|
|
27
|
-
* @returns An array with the same content as the Noir version. Elements past the length are discarded.
|
|
28
|
-
*/
|
|
29
|
-
export declare function fromBoundedVec(storage: ACVMField[], length: ACVMField): Fr[];
|
|
30
|
-
/**
|
|
31
|
-
* Transforms a witness map to its field elements.
|
|
32
|
-
* @param witness - The witness to extract from.
|
|
33
|
-
* @returns The return values.
|
|
34
|
-
*/
|
|
35
|
-
export declare function witnessMapToFields(witness: ACVMWitness): Fr[];
|
|
36
|
-
//# sourceMappingURL=deserialize.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deserialize.d.ts","sourceRoot":"","sources":["../../src/acvm/deserialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnE;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,EAAE,CAElD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAEzC;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAE3C;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,CAE5E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,GAAG,EAAE,EAAE,CAG7D"}
|
package/dest/acvm/index.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { extractCallStack, type ACIRCallback, type ACIRExecutionResult } from './acvm.js';
|
|
2
|
-
export * from './acvm_types.js';
|
|
3
|
-
export * from './deserialize.js';
|
|
4
|
-
export * from './oracle/index.js';
|
|
5
|
-
export * from './serialize.js';
|
|
6
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dest/acvm/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/acvm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,YAAY,EAAE,KAAK,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC1F,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { type Oracle } from './oracle.js';
|
|
2
|
-
export * from './oracle.js';
|
|
3
|
-
export * from './typed_oracle.js';
|
|
4
|
-
/**
|
|
5
|
-
* A conditional type that takes a type `T` and returns a union of its method names.
|
|
6
|
-
*/
|
|
7
|
-
type MethodNames<T> = {
|
|
8
|
-
[K in keyof T]: T[K] extends (...args: any[]) => any ? K : never;
|
|
9
|
-
}[keyof T];
|
|
10
|
-
/**
|
|
11
|
-
* Available oracle function names.
|
|
12
|
-
*/
|
|
13
|
-
export type ORACLE_NAMES = MethodNames<Oracle>;
|
|
14
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/acvm/oracle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAElC;;GAEG;AACH,KAAK,WAAW,CAAC,CAAC,IAAI;KACnB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK;CACjE,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { type ACVMField } from '../acvm_types.js';
|
|
2
|
-
import { type TypedOracle } from './typed_oracle.js';
|
|
3
|
-
/**
|
|
4
|
-
* A data source that has all the apis required by Aztec.nr.
|
|
5
|
-
*/
|
|
6
|
-
export declare class Oracle {
|
|
7
|
-
private typedOracle;
|
|
8
|
-
constructor(typedOracle: TypedOracle);
|
|
9
|
-
getRandomField(): ACVMField;
|
|
10
|
-
storeInExecutionCache(_length: ACVMField[], values: ACVMField[]): Promise<ACVMField>;
|
|
11
|
-
loadFromExecutionCache([returnsHash]: ACVMField[]): Promise<ACVMField[]>;
|
|
12
|
-
getBlockNumber(): Promise<ACVMField>;
|
|
13
|
-
getContractAddress(): Promise<ACVMField>;
|
|
14
|
-
getVersion(): Promise<ACVMField>;
|
|
15
|
-
getChainId(): Promise<ACVMField>;
|
|
16
|
-
getKeyValidationRequest([pkMHash]: ACVMField[]): Promise<ACVMField[]>;
|
|
17
|
-
getContractInstance([address]: ACVMField[]): Promise<string[]>;
|
|
18
|
-
getMembershipWitness([blockNumber]: ACVMField[], [treeId]: ACVMField[], [leafValue]: ACVMField[]): Promise<ACVMField[]>;
|
|
19
|
-
getNullifierMembershipWitness([blockNumber]: ACVMField[], [nullifier]: ACVMField[]): Promise<ACVMField[]>;
|
|
20
|
-
getLowNullifierMembershipWitness([blockNumber]: ACVMField[], [nullifier]: ACVMField[]): Promise<ACVMField[]>;
|
|
21
|
-
getPublicDataTreeWitness([blockNumber]: ACVMField[], [leafSlot]: ACVMField[]): Promise<ACVMField[]>;
|
|
22
|
-
getBlockHeader([blockNumber]: ACVMField[]): Promise<ACVMField[]>;
|
|
23
|
-
getAuthWitness([messageHash]: ACVMField[]): Promise<ACVMField[]>;
|
|
24
|
-
popCapsule(): Promise<ACVMField[]>;
|
|
25
|
-
getPublicKeysAndPartialAddress([address]: ACVMField[]): Promise<ACVMField[]>;
|
|
26
|
-
getNotes([storageSlot]: ACVMField[], [numSelects]: ACVMField[], selectByIndexes: ACVMField[], selectByOffsets: ACVMField[], selectByLengths: ACVMField[], selectValues: ACVMField[], selectComparators: ACVMField[], sortByIndexes: ACVMField[], sortByOffsets: ACVMField[], sortByLengths: ACVMField[], sortOrder: ACVMField[], [limit]: ACVMField[], [offset]: ACVMField[], [status]: ACVMField[], [returnSize]: ACVMField[]): Promise<ACVMField[]>;
|
|
27
|
-
notifyCreatedNote([storageSlot]: ACVMField[], [noteTypeId]: ACVMField[], note: ACVMField[], [noteHash]: ACVMField[], [counter]: ACVMField[]): ACVMField;
|
|
28
|
-
notifyNullifiedNote([innerNullifier]: ACVMField[], [noteHash]: ACVMField[], [counter]: ACVMField[]): Promise<ACVMField>;
|
|
29
|
-
notifyCreatedNullifier([innerNullifier]: ACVMField[]): Promise<ACVMField>;
|
|
30
|
-
checkNullifierExists([innerNullifier]: ACVMField[]): Promise<ACVMField>;
|
|
31
|
-
getL1ToL2MembershipWitness([contractAddress]: ACVMField[], [messageHash]: ACVMField[], [secret]: ACVMField[]): Promise<ACVMField[]>;
|
|
32
|
-
storageRead([contractAddress]: ACVMField[], [startStorageSlot]: ACVMField[], [blockNumber]: ACVMField[], [numberOfElements]: ACVMField[]): Promise<ACVMField[]>;
|
|
33
|
-
storageWrite([startStorageSlot]: ACVMField[], values: ACVMField[]): Promise<ACVMField[]>;
|
|
34
|
-
emitContractClassLog([contractAddress]: ACVMField[], message: ACVMField[], [counter]: ACVMField[]): ACVMField;
|
|
35
|
-
debugLog(message: ACVMField[], _ignoredFieldsSize: ACVMField[], fields: ACVMField[]): void;
|
|
36
|
-
callPrivateFunction([contractAddress]: ACVMField[], [functionSelector]: ACVMField[], [argsHash]: ACVMField[], [sideEffectCounter]: ACVMField[], [isStaticCall]: ACVMField[]): Promise<ACVMField[]>;
|
|
37
|
-
enqueuePublicFunctionCall([contractAddress]: ACVMField[], [functionSelector]: ACVMField[], [argsHash]: ACVMField[], [sideEffectCounter]: ACVMField[], [isStaticCall]: ACVMField[]): Promise<ACVMField>;
|
|
38
|
-
setPublicTeardownFunctionCall([contractAddress]: ACVMField[], [functionSelector]: ACVMField[], [argsHash]: ACVMField[], [sideEffectCounter]: ACVMField[], [isStaticCall]: ACVMField[]): Promise<ACVMField>;
|
|
39
|
-
notifySetMinRevertibleSideEffectCounter([minRevertibleSideEffectCounter]: ACVMField[]): void;
|
|
40
|
-
getIndexedTaggingSecretAsSender([sender]: ACVMField[], [recipient]: ACVMField[]): Promise<ACVMField[]>;
|
|
41
|
-
incrementAppTaggingSecretIndexAsSender([sender]: ACVMField[], [recipient]: ACVMField[]): Promise<void>;
|
|
42
|
-
syncNotes(): Promise<void>;
|
|
43
|
-
deliverNote([contractAddress]: ACVMField[], [storageSlot]: ACVMField[], [nonce]: ACVMField[], content: ACVMField[], [contentLength]: ACVMField[], [noteHash]: ACVMField[], [nullifier]: ACVMField[], [txHash]: ACVMField[], [recipient]: ACVMField[]): Promise<ACVMField>;
|
|
44
|
-
dbStore([contractAddress]: ACVMField[], [slot]: ACVMField[], values: ACVMField[]): Promise<void>;
|
|
45
|
-
dbLoad([contractAddress]: ACVMField[], [slot]: ACVMField[], [tSize]: ACVMField[]): Promise<(ACVMField | ACVMField[])[]>;
|
|
46
|
-
dbDelete([contractAddress]: ACVMField[], [slot]: ACVMField[]): Promise<void>;
|
|
47
|
-
dbCopy([contractAddress]: ACVMField[], [srcSlot]: ACVMField[], [dstSlot]: ACVMField[], [numEntries]: ACVMField[]): Promise<void>;
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=oracle.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../../src/acvm/oracle/oracle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { type CompleteAddress, type MerkleTreeId, type Note, type NoteStatus, type NullifierMembershipWitness, type PublicDataWitness, type UnencryptedL2Log } from '@aztec/circuit-types';
|
|
2
|
-
import { type BlockHeader, type ContractInstance, type IndexedTaggingSecret, type KeyValidationRequest, type L1_TO_L2_MSG_TREE_HEIGHT } from '@aztec/circuits.js';
|
|
3
|
-
import { type FunctionSelector, type NoteSelector } from '@aztec/foundation/abi';
|
|
4
|
-
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
5
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
6
|
-
import { type MessageLoadOracleInputs } from '../../common/message_load_oracle_inputs.js';
|
|
7
|
-
/**
|
|
8
|
-
* Information about a note needed during execution.
|
|
9
|
-
*/
|
|
10
|
-
export interface NoteData {
|
|
11
|
-
/** The note. */
|
|
12
|
-
note: Note;
|
|
13
|
-
/** The contract address of the note. */
|
|
14
|
-
contractAddress: AztecAddress;
|
|
15
|
-
/** The storage slot of the note. */
|
|
16
|
-
storageSlot: Fr;
|
|
17
|
-
/** The nonce of the note. */
|
|
18
|
-
nonce: Fr;
|
|
19
|
-
/** A hash of the note. */
|
|
20
|
-
noteHash: Fr;
|
|
21
|
-
/** The corresponding nullifier of the note. Undefined for pending notes. */
|
|
22
|
-
siloedNullifier?: Fr;
|
|
23
|
-
/** The note's leaf index in the note hash tree. Undefined for pending notes. */
|
|
24
|
-
index?: bigint;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Oracle with typed parameters and typed return values.
|
|
28
|
-
* Methods that require read and/or write will have to be implemented based on the context (public, private, or view)
|
|
29
|
-
* and are unavailable by default.
|
|
30
|
-
*/
|
|
31
|
-
export declare abstract class TypedOracle {
|
|
32
|
-
getRandomField(): Fr;
|
|
33
|
-
storeInExecutionCache(_values: Fr[]): Promise<Fr>;
|
|
34
|
-
loadFromExecutionCache(_hash: Fr): Promise<Fr[]>;
|
|
35
|
-
getBlockNumber(): Promise<number>;
|
|
36
|
-
getContractAddress(): Promise<AztecAddress>;
|
|
37
|
-
getChainId(): Promise<Fr>;
|
|
38
|
-
getVersion(): Promise<Fr>;
|
|
39
|
-
getKeyValidationRequest(_pkMHash: Fr): Promise<KeyValidationRequest>;
|
|
40
|
-
getContractInstance(_address: AztecAddress): Promise<ContractInstance>;
|
|
41
|
-
getMembershipWitness(_blockNumber: number, _treeId: MerkleTreeId, _leafValue: Fr): Promise<Fr[] | undefined>;
|
|
42
|
-
getNullifierMembershipWitness(_blockNumber: number, _nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
|
|
43
|
-
getPublicDataTreeWitness(_blockNumber: number, _leafSlot: Fr): Promise<PublicDataWitness | undefined>;
|
|
44
|
-
getLowNullifierMembershipWitness(_blockNumber: number, _nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
|
|
45
|
-
getBlockHeader(_blockNumber: number): Promise<BlockHeader | undefined>;
|
|
46
|
-
getCompleteAddress(_account: AztecAddress): Promise<CompleteAddress>;
|
|
47
|
-
getAuthWitness(_messageHash: Fr): Promise<Fr[] | undefined>;
|
|
48
|
-
popCapsule(): Promise<Fr[]>;
|
|
49
|
-
getNotes(_storageSlot: Fr, _numSelects: number, _selectByIndexes: number[], _selectByOffsets: number[], _selectByLengths: number[], _selectValues: Fr[], _selectComparators: number[], _sortByIndexes: number[], _sortByOffsets: number[], _sortByLengths: number[], _sortOrder: number[], _limit: number, _offset: number, _status: NoteStatus): Promise<NoteData[]>;
|
|
50
|
-
notifyCreatedNote(_storageSlot: Fr, _noteTypeId: NoteSelector, _note: Fr[], _noteHash: Fr, _counter: number): void;
|
|
51
|
-
notifyNullifiedNote(_innerNullifier: Fr, _noteHash: Fr, _counter: number): Promise<void>;
|
|
52
|
-
notifyCreatedNullifier(_innerNullifier: Fr): Promise<void>;
|
|
53
|
-
checkNullifierExists(_innerNullifier: Fr): Promise<boolean>;
|
|
54
|
-
getL1ToL2MembershipWitness(_contractAddress: AztecAddress, _messageHash: Fr, _secret: Fr): Promise<MessageLoadOracleInputs<typeof L1_TO_L2_MSG_TREE_HEIGHT>>;
|
|
55
|
-
storageRead(_contractAddress: AztecAddress, _startStorageSlot: Fr, _blockNumber: number, _numberOfElements: number): Promise<Fr[]>;
|
|
56
|
-
storageWrite(_startStorageSlot: Fr, _values: Fr[]): Promise<Fr[]>;
|
|
57
|
-
emitContractClassLog(_log: UnencryptedL2Log, _counter: number): Fr;
|
|
58
|
-
callPrivateFunction(_targetContractAddress: AztecAddress, _functionSelector: FunctionSelector, _argsHash: Fr, _sideEffectCounter: number, _isStaticCall: boolean): Promise<{
|
|
59
|
-
endSideEffectCounter: Fr;
|
|
60
|
-
returnsHash: Fr;
|
|
61
|
-
}>;
|
|
62
|
-
enqueuePublicFunctionCall(_targetContractAddress: AztecAddress, _functionSelector: FunctionSelector, _argsHash: Fr, _sideEffectCounter: number, _isStaticCall: boolean): Promise<Fr>;
|
|
63
|
-
setPublicTeardownFunctionCall(_targetContractAddress: AztecAddress, _functionSelector: FunctionSelector, _argsHash: Fr, _sideEffectCounter: number, _isStaticCall: boolean): Promise<Fr>;
|
|
64
|
-
notifySetMinRevertibleSideEffectCounter(_minRevertibleSideEffectCounter: number): void;
|
|
65
|
-
debugLog(_message: string, _fields: Fr[]): void;
|
|
66
|
-
getIndexedTaggingSecretAsSender(_sender: AztecAddress, _recipient: AztecAddress): Promise<IndexedTaggingSecret>;
|
|
67
|
-
incrementAppTaggingSecretIndexAsSender(_sender: AztecAddress, _recipient: AztecAddress): Promise<void>;
|
|
68
|
-
syncNotes(): Promise<void>;
|
|
69
|
-
deliverNote(_contractAddress: AztecAddress, _storageSlot: Fr, _nonce: Fr, _content: Fr[], _noteHash: Fr, _nullifier: Fr, _txHash: Fr, _recipient: AztecAddress): Promise<void>;
|
|
70
|
-
dbStore(_contractAddress: AztecAddress, _key: Fr, _values: Fr[]): Promise<void>;
|
|
71
|
-
dbLoad(_contractAddress: AztecAddress, _key: Fr): Promise<Fr[] | null>;
|
|
72
|
-
dbDelete(_contractAddress: AztecAddress, _key: Fr): Promise<void>;
|
|
73
|
-
dbCopy(_contractAddress: AztecAddress, _srcKey: Fr, _dstKey: Fr, _numEntries: number): Promise<void>;
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=typed_oracle.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"typed_oracle.d.ts","sourceRoot":"","sources":["../../../src/acvm/oracle/typed_oracle.ts"],"names":[],"mappings":"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"}
|
package/dest/acvm/serialize.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
-
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
4
|
-
import { type EthAddress } from '@aztec/foundation/eth-address';
|
|
5
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
6
|
-
import { type ACVMField } from './acvm_types.js';
|
|
7
|
-
/**
|
|
8
|
-
* Converts a value to an ACVM field.
|
|
9
|
-
* @param value - The value to convert.
|
|
10
|
-
* @returns The ACVM field.
|
|
11
|
-
*/
|
|
12
|
-
export declare function toACVMField(value: AztecAddress | EthAddress | Fr | Buffer | boolean | number | bigint | ACVMField): ACVMField;
|
|
13
|
-
/**
|
|
14
|
-
* Inserts a list of ACVM fields to a witness.
|
|
15
|
-
* @param witnessStartIndex - The index where to start inserting the fields.
|
|
16
|
-
* @param fields - The fields to insert.
|
|
17
|
-
* @returns The witness.
|
|
18
|
-
*/
|
|
19
|
-
export declare function toACVMWitness(witnessStartIndex: number, fields: Parameters<typeof toACVMField>[0][]): Map<number, string>;
|
|
20
|
-
//# sourceMappingURL=serialize.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/acvm/serialize.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAgBjD;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,EAAE,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GACrF,SAAS,CAYX;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,uBAKnG"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { type AztecAddress } from '@aztec/circuits.js';
|
|
2
|
-
import { type Fr } from '@aztec/foundation/fields';
|
|
3
|
-
import { type AvmExecutionEnvironment } from './avm_execution_environment.js';
|
|
4
|
-
import { type Gas } from './avm_gas.js';
|
|
5
|
-
import { AvmMachineState } from './avm_machine_state.js';
|
|
6
|
-
import { type AvmPersistableStateManager } from './journal/journal.js';
|
|
7
|
-
/**
|
|
8
|
-
* An execution context includes the information necessary to initiate AVM
|
|
9
|
-
* execution along with all state maintained by the AVM throughout execution.
|
|
10
|
-
*/
|
|
11
|
-
export declare class AvmContext {
|
|
12
|
-
persistableState: AvmPersistableStateManager;
|
|
13
|
-
environment: AvmExecutionEnvironment;
|
|
14
|
-
machineState: AvmMachineState;
|
|
15
|
-
/**
|
|
16
|
-
* Create a new AVM context
|
|
17
|
-
* @param persistableState - Manages world state and accrued substate during execution - (caching, fetching, tracing)
|
|
18
|
-
* @param environment - Contains constant variables provided by the kernel
|
|
19
|
-
* @param machineState - VM state that is modified on an instruction-by-instruction basis
|
|
20
|
-
* @returns new AvmContext instance
|
|
21
|
-
*/
|
|
22
|
-
constructor(persistableState: AvmPersistableStateManager, environment: AvmExecutionEnvironment, machineState: AvmMachineState);
|
|
23
|
-
/**
|
|
24
|
-
* Prepare a new AVM context that will be ready for an external/nested call
|
|
25
|
-
* - Fork the world state journal
|
|
26
|
-
* - Derive a machine state from the current state
|
|
27
|
-
* - E.g., gas metering is preserved but pc is reset
|
|
28
|
-
* - Derive an execution environment from the caller/parent
|
|
29
|
-
* - Alter address
|
|
30
|
-
*
|
|
31
|
-
* @param address - The contract instance to initialize a context for
|
|
32
|
-
* @param calldata - Data/arguments for nested call
|
|
33
|
-
* @param allocatedGas - Gas allocated for the nested call
|
|
34
|
-
* @param callType - Type of call (CALL or STATICCALL)
|
|
35
|
-
* @returns new AvmContext instance
|
|
36
|
-
*/
|
|
37
|
-
createNestedContractCallContext(address: AztecAddress, calldata: Fr[], allocatedGas: Gas, callType: 'CALL' | 'STATICCALL'): AvmContext;
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=avm_context.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"avm_context.d.ts","sourceRoot":"","sources":["../../src/avm/avm_context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,KAAK,GAAG,EAAgB,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAEvE;;;GAGG;AACH,qBAAa,UAAU;IASZ,gBAAgB,EAAE,0BAA0B;IAC5C,WAAW,EAAE,uBAAuB;IACpC,YAAY,EAAE,eAAe;IAVtC;;;;;;OAMG;gBAEM,gBAAgB,EAAE,0BAA0B,EAC5C,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,eAAe;IAGtC;;;;;;;;;;;;;OAaG;IACI,+BAA+B,CACpC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,EAAE,EAAE,EACd,YAAY,EAAE,GAAG,EACjB,QAAQ,EAAE,MAAM,GAAG,YAAY,GAC9B,UAAU;CAUd"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { type SimulationError } from '@aztec/circuit-types';
|
|
2
|
-
import { Gas } from '@aztec/circuits.js';
|
|
3
|
-
import { type Fr } from '@aztec/foundation/fields';
|
|
4
|
-
import { type Gas as AvmGas } from './avm_gas.js';
|
|
5
|
-
import { type AvmRevertReason } from './errors.js';
|
|
6
|
-
/**
|
|
7
|
-
* Results of an contract call's execution in the AVM.
|
|
8
|
-
*/
|
|
9
|
-
export declare class AvmContractCallResult {
|
|
10
|
-
reverted: boolean;
|
|
11
|
-
output: Fr[];
|
|
12
|
-
gasLeft: AvmGas;
|
|
13
|
-
revertReason?: AvmRevertReason | undefined;
|
|
14
|
-
constructor(reverted: boolean, output: Fr[], gasLeft: AvmGas, revertReason?: AvmRevertReason | undefined);
|
|
15
|
-
toString(): string;
|
|
16
|
-
finalize(): AvmFinalizedCallResult;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Similar to AvmContractCallResult, but with a SimulationError and standard Gas
|
|
20
|
-
* which are useful for consumption external to core AVM simulation.
|
|
21
|
-
*/
|
|
22
|
-
export declare class AvmFinalizedCallResult {
|
|
23
|
-
reverted: boolean;
|
|
24
|
-
output: Fr[];
|
|
25
|
-
gasLeft: Gas;
|
|
26
|
-
revertReason?: SimulationError | undefined;
|
|
27
|
-
constructor(reverted: boolean, output: Fr[], gasLeft: Gas, revertReason?: SimulationError | undefined);
|
|
28
|
-
toString(): string;
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=avm_contract_call_result.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"avm_contract_call_result.d.ts","sourceRoot":"","sources":["../../src/avm/avm_contract_call_result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAKnD,OAAO,EAAE,KAAK,GAAG,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD;;GAEG;AACH,qBAAa,qBAAqB;IAEvB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,EAAE,EAAE;IACZ,OAAO,EAAE,MAAM;IACf,YAAY,CAAC;gBAHb,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,EAAE,EAAE,EACZ,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,6BAAiB;IAGvC,QAAQ,IAAI,MAAM;IAQlB,QAAQ,IAAI,sBAAsB;CAInC;AAED;;;GAGG;AACH,qBAAa,sBAAsB;IAExB,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,EAAE,EAAE;IACZ,OAAO,EAAE,GAAG;IACZ,YAAY,CAAC;gBAHb,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,EAAE,EAAE,EACZ,OAAO,EAAE,GAAG,EACZ,YAAY,CAAC,6BAAiB;IAGvC,QAAQ,IAAI,MAAM;CAOnB"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { type GlobalVariables } from '@aztec/circuits.js';
|
|
2
|
-
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
3
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
4
|
-
/**
|
|
5
|
-
* Contains variables that remain constant during AVM execution
|
|
6
|
-
* These variables are provided by the public kernel circuit
|
|
7
|
-
*/
|
|
8
|
-
export declare class AvmExecutionEnvironment {
|
|
9
|
-
readonly address: AztecAddress;
|
|
10
|
-
readonly sender: AztecAddress;
|
|
11
|
-
readonly contractCallDepth: Fr;
|
|
12
|
-
readonly transactionFee: Fr;
|
|
13
|
-
readonly globals: GlobalVariables;
|
|
14
|
-
readonly isStaticCall: boolean;
|
|
15
|
-
readonly calldata: Fr[];
|
|
16
|
-
constructor(address: AztecAddress, sender: AztecAddress, contractCallDepth: Fr, transactionFee: Fr, globals: GlobalVariables, isStaticCall: boolean, calldata: Fr[]);
|
|
17
|
-
private deriveEnvironmentForNestedCallInternal;
|
|
18
|
-
deriveEnvironmentForNestedCall(targetAddress: AztecAddress, calldata: Fr[]): AvmExecutionEnvironment;
|
|
19
|
-
deriveEnvironmentForNestedStaticCall(targetAddress: AztecAddress, calldata: Fr[]): AvmExecutionEnvironment;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=avm_execution_environment.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"avm_execution_environment.d.ts","sourceRoot":"","sources":["../../src/avm/avm_execution_environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C;;;GAGG;AACH,qBAAa,uBAAuB;aAEhB,OAAO,EAAE,YAAY;aACrB,MAAM,EAAE,YAAY;aACpB,iBAAiB,EAAE,EAAE;aACrB,cAAc,EAAE,EAAE;aAClB,OAAO,EAAE,eAAe;aACxB,YAAY,EAAE,OAAO;aACrB,QAAQ,EAAE,EAAE,EAAE;gBANd,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,EACpB,iBAAiB,EAAE,EAAE,EACrB,cAAc,EAAE,EAAE,EAClB,OAAO,EAAE,eAAe,EACxB,YAAY,EAAE,OAAO,EACrB,QAAQ,EAAE,EAAE,EAAE;IAGhC,OAAO,CAAC,sCAAsC;IAYvC,8BAA8B,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,uBAAuB;IAIpG,oCAAoC,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,uBAAuB;CAGlH"}
|
package/dest/avm/avm_gas.d.ts
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { TypeTag } from './avm_memory_types.js';
|
|
2
|
-
import { Opcode } from './serialization/instruction_serialization.js';
|
|
3
|
-
/** Gas counters in L1, L2, and DA. */
|
|
4
|
-
export type Gas = {
|
|
5
|
-
l2Gas: number;
|
|
6
|
-
daGas: number;
|
|
7
|
-
};
|
|
8
|
-
/** Maps a Gas struct to gasLeft properties. */
|
|
9
|
-
export declare function gasToGasLeft(gas: Gas): {
|
|
10
|
-
l2GasLeft: number;
|
|
11
|
-
daGasLeft: number;
|
|
12
|
-
};
|
|
13
|
-
/** Maps gasLeft properties to a gas struct. */
|
|
14
|
-
export declare function gasLeftToGas(gasLeft: {
|
|
15
|
-
l2GasLeft: number;
|
|
16
|
-
daGasLeft: number;
|
|
17
|
-
}): {
|
|
18
|
-
l2Gas: number;
|
|
19
|
-
daGas: number;
|
|
20
|
-
};
|
|
21
|
-
/** Creates a new instance with all values set to zero except the ones set. */
|
|
22
|
-
export declare function makeGas(gasCost: Partial<Gas>): {
|
|
23
|
-
l2Gas: number;
|
|
24
|
-
daGas: number;
|
|
25
|
-
};
|
|
26
|
-
/** Sums together multiple instances of Gas. */
|
|
27
|
-
export declare function sumGas(...gases: Partial<Gas>[]): Gas;
|
|
28
|
-
/** Multiplies a gas instance by a scalar. */
|
|
29
|
-
export declare function mulGas(gas: Partial<Gas>, scalar: number): {
|
|
30
|
-
l2Gas: number;
|
|
31
|
-
daGas: number;
|
|
32
|
-
};
|
|
33
|
-
/** Zero gas across all gas dimensions. */
|
|
34
|
-
export declare const EmptyGas: Gas;
|
|
35
|
-
/** Dimensions of gas usage: L1, L2, and DA. */
|
|
36
|
-
export declare const GAS_DIMENSIONS: readonly ["l2Gas", "daGas"];
|
|
37
|
-
/** Returns the fixed base gas cost for a given opcode. */
|
|
38
|
-
export declare function getBaseGasCost(opcode: Opcode): Gas;
|
|
39
|
-
export declare function getDynamicGasCost(opcode: Opcode): Gas;
|
|
40
|
-
/** Returns the gas cost associated with the memory operations performed. */
|
|
41
|
-
export declare function getMemoryGasCost(args: {
|
|
42
|
-
reads?: number;
|
|
43
|
-
writes?: number;
|
|
44
|
-
indirect?: number;
|
|
45
|
-
}): {
|
|
46
|
-
l2Gas: number;
|
|
47
|
-
daGas: number;
|
|
48
|
-
};
|
|
49
|
-
/** Constants used in base cost calculations. */
|
|
50
|
-
export declare const GAS_COST_CONSTANTS: {
|
|
51
|
-
MEMORY_READ: number;
|
|
52
|
-
MEMORY_INDIRECT_READ_PENALTY: number;
|
|
53
|
-
MEMORY_WRITE: number;
|
|
54
|
-
};
|
|
55
|
-
/** Returns gas cost for an operation on a given type tag based on the base cost per byte. */
|
|
56
|
-
export declare function getGasCostForTypeTag(tag: TypeTag, baseCost: Gas): {
|
|
57
|
-
l2Gas: number;
|
|
58
|
-
daGas: number;
|
|
59
|
-
};
|
|
60
|
-
//# sourceMappingURL=avm_gas.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"avm_gas.d.ts","sourceRoot":"","sources":["../../src/avm/avm_gas.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAGhD,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAEtE,sCAAsC;AACtC,MAAM,MAAM,GAAG,GAAG;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,+CAA+C;AAC/C,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG;;;EAEpC;AAED,+CAA+C;AAC/C,wBAAgB,YAAY,CAAC,OAAO,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;;;EAE7E;AAED,8EAA8E;AAC9E,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC;;;EAE5C;AAED,+CAA+C;AAC/C,wBAAgB,MAAM,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,OAQ9C;AAED,6CAA6C;AAC7C,wBAAgB,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM;;;EAEvD;AAED,0CAA0C;AAC1C,eAAO,MAAM,QAAQ,EAAE,GAGtB,CAAC;AAMF,+CAA+C;AAC/C,eAAO,MAAM,cAAc,6BAA8B,CAAC;AAwF1D,0DAA0D;AAC1D,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAElD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAErD;AAED,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE;;;EAQ5F;AAED,gDAAgD;AAChD,eAAO,MAAM,kBAAkB;;;;CAI9B,CAAC;AAEF,6FAA6F;AAC7F,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG;;;EAE/D"}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { type Fr } from '@aztec/circuits.js';
|
|
2
|
-
import { type Gas } from './avm_gas.js';
|
|
3
|
-
import { TaggedMemory } from './avm_memory_types.js';
|
|
4
|
-
import { type AvmRevertReason } from './errors.js';
|
|
5
|
-
/**
|
|
6
|
-
* A few fields of machine state are initialized from AVM session inputs or call instruction arguments
|
|
7
|
-
*/
|
|
8
|
-
export type InitialAvmMachineState = {
|
|
9
|
-
l2GasLeft: number;
|
|
10
|
-
daGasLeft: number;
|
|
11
|
-
};
|
|
12
|
-
/**
|
|
13
|
-
* Used to track the call stack and revert data of nested calls.
|
|
14
|
-
* This is used to provide a more detailed revert reason when a contract call reverts.
|
|
15
|
-
* It is only a heuristic and may not always provide the correct revert reason.
|
|
16
|
-
*/
|
|
17
|
-
type TrackedRevertInfo = {
|
|
18
|
-
revertDataRepresentative: Fr[];
|
|
19
|
-
recursiveRevertReason: AvmRevertReason;
|
|
20
|
-
};
|
|
21
|
-
type CallStackEntry = {
|
|
22
|
-
callPc: number;
|
|
23
|
-
returnPc: number;
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* Avm state modified on an instruction-per-instruction basis.
|
|
27
|
-
*/
|
|
28
|
-
export declare class AvmMachineState {
|
|
29
|
-
/** gas remaining of the gas allocated for a contract call */
|
|
30
|
-
l2GasLeft: number;
|
|
31
|
-
daGasLeft: number;
|
|
32
|
-
/** program counter, byte based */
|
|
33
|
-
pc: number;
|
|
34
|
-
/** program counter of the next instruction, byte based */
|
|
35
|
-
nextPc: number;
|
|
36
|
-
/** return/revertdata of the last nested call. */
|
|
37
|
-
nestedReturndata: Fr[];
|
|
38
|
-
/**
|
|
39
|
-
* Used to track the call stack and revert data of nested calls.
|
|
40
|
-
* This is used to provide a more detailed revert reason when a contract call reverts.
|
|
41
|
-
* It is only a heuristic and may not always provide the correct revert reason.
|
|
42
|
-
*/
|
|
43
|
-
collectedRevertInfo: TrackedRevertInfo | undefined;
|
|
44
|
-
/**
|
|
45
|
-
* On INTERNALCALL, internal call stack is pushed to with the current pc and the return pc.
|
|
46
|
-
* On INTERNALRETURN, value is popped from the internal call stack and assigned to the return pc.
|
|
47
|
-
*/
|
|
48
|
-
internalCallStack: CallStackEntry[];
|
|
49
|
-
/** Memory accessible to user code */
|
|
50
|
-
readonly memory: TaggedMemory;
|
|
51
|
-
/**
|
|
52
|
-
* Signals that execution should end.
|
|
53
|
-
* AvmContext execution continues executing instructions until the machine state signals "halted"
|
|
54
|
-
*/
|
|
55
|
-
private halted;
|
|
56
|
-
/** Signals that execution has reverted normally (this does not cover exceptional halts) */
|
|
57
|
-
private reverted;
|
|
58
|
-
/** Output data must NOT be modified once it is set */
|
|
59
|
-
private output;
|
|
60
|
-
constructor(gasLeft: Gas);
|
|
61
|
-
constructor(l2GasLeft: number, daGasLeft: number);
|
|
62
|
-
get gasLeft(): Gas;
|
|
63
|
-
static fromState(state: InitialAvmMachineState): AvmMachineState;
|
|
64
|
-
/**
|
|
65
|
-
* Consumes the given gas.
|
|
66
|
-
* Should any of the gas dimensions get depleted, it sets all gas left to zero and triggers
|
|
67
|
-
* an exceptional halt by throwing an OutOfGasError.
|
|
68
|
-
*/
|
|
69
|
-
consumeGas(gasCost: Partial<Gas>): void;
|
|
70
|
-
/** Increases the gas left by the amounts specified. */
|
|
71
|
-
refundGas(gasRefund: Partial<Gas>): void;
|
|
72
|
-
/**
|
|
73
|
-
* Halt as successful
|
|
74
|
-
* Output data must NOT be modified once it is set
|
|
75
|
-
* @param output
|
|
76
|
-
*/
|
|
77
|
-
return(output: Fr[]): void;
|
|
78
|
-
/**
|
|
79
|
-
* Halt as reverted
|
|
80
|
-
* Output data must NOT be modified once it is set
|
|
81
|
-
* @param output
|
|
82
|
-
*/
|
|
83
|
-
revert(output: Fr[]): void;
|
|
84
|
-
getHalted(): boolean;
|
|
85
|
-
getReverted(): boolean;
|
|
86
|
-
getOutput(): Fr[];
|
|
87
|
-
/**
|
|
88
|
-
* Flag an exceptional halt. Clears gas left and sets the reverted flag. No output data.
|
|
89
|
-
*/
|
|
90
|
-
private exceptionalHalt;
|
|
91
|
-
}
|
|
92
|
-
export {};
|
|
93
|
-
//# sourceMappingURL=avm_machine_state.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"avm_machine_state.d.ts","sourceRoot":"","sources":["../../src/avm/avm_machine_state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EAAkB,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,KAAK,eAAe,EAAiB,MAAM,aAAa,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,KAAK,iBAAiB,GAAG;IACvB,wBAAwB,EAAE,EAAE,EAAE,CAAC;IAC/B,qBAAqB,EAAE,eAAe,CAAC;CACxC,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,qBAAa,eAAe;IAC1B,6DAA6D;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IACzB,kCAAkC;IAC3B,EAAE,EAAE,MAAM,CAAK;IACtB,0DAA0D;IACnD,MAAM,EAAE,MAAM,CAAK;IAC1B,iDAAiD;IAC1C,gBAAgB,EAAE,EAAE,EAAE,CAAM;IACnC;;;;OAIG;IACI,mBAAmB,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAE1D;;;OAGG;IACI,iBAAiB,EAAE,cAAc,EAAE,CAAM;IAEhD,qCAAqC;IACrC,SAAgB,MAAM,EAAE,YAAY,CAAsB;IAE1D;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAkB;IAChC,2FAA2F;IAC3F,OAAO,CAAC,QAAQ,CAAkB;IAClC,sDAAsD;IACtD,OAAO,CAAC,MAAM,CAAY;gBAEd,OAAO,EAAE,GAAG;gBACZ,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAUhD,IAAW,OAAO,IAAI,GAAG,CAExB;WAEa,SAAS,CAAC,KAAK,EAAE,sBAAsB,GAAG,eAAe;IAIvE;;;;OAIG;IACI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC;IAiBvC,uDAAuD;IAChD,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC;IAMxC;;;;OAIG;IACI,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE;IAK1B;;;;OAIG;IACI,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE;IAMnB,SAAS,IAAI,OAAO;IAIpB,WAAW,IAAI,OAAO;IAItB,SAAS,IAAI,EAAE,EAAE;IAIxB;;OAEG;IACH,OAAO,CAAC,eAAe;CAKxB"}
|