@aztec/constants 0.0.0-test.0 → 0.0.1-commit.0208eb9
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/constants.d.ts +10 -2
- package/dest/constants.d.ts.map +1 -1
- package/dest/constants.gen.d.ts +432 -299
- package/dest/constants.gen.d.ts.map +1 -1
- package/dest/constants.gen.js +432 -299
- package/dest/constants.js +15 -1
- package/dest/scripts/constants.in.d.ts +1 -1
- package/dest/scripts/constants.in.js +299 -131
- package/package.json +17 -13
- package/src/constants.gen.ts +432 -305
- package/src/constants.ts +28 -1
package/dest/constants.js
CHANGED
|
@@ -1,4 +1,18 @@
|
|
|
1
|
+
import { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
|
+
// Re-export L2 block number constants with proper BlockNumber type
|
|
4
|
+
// Note: The generated constants are plain numbers, but we provide typed versions here
|
|
5
|
+
import { GENESIS_BLOCK_HEADER_HASH as GENESIS_BLOCK_HEADER_HASH_BIGINT, INITIAL_CHECKPOINT_NUMBER as INITIAL_CHECKPOINT_NUM_RAW, INITIAL_L2_BLOCK_NUM as INITIAL_L2_BLOCK_NUM_RAW } from './constants.gen.js';
|
|
1
6
|
// Typescript-land-only constants
|
|
2
|
-
export const
|
|
7
|
+
export const SPONSORED_FPC_SALT = BigInt(0);
|
|
3
8
|
// Autogenerated constants loaded from noir-land
|
|
9
|
+
// eslint-disable-next-line import-x/export
|
|
4
10
|
export * from './constants.gen.js';
|
|
11
|
+
/** The initial L2 block number (typed as BlockNumber). This is the first block number in the Aztec L2 chain. */ // Shadow the export from constants.gen above
|
|
12
|
+
// eslint-disable-next-line import-x/export
|
|
13
|
+
export const INITIAL_L2_BLOCK_NUM = BlockNumber(INITIAL_L2_BLOCK_NUM_RAW);
|
|
14
|
+
/** The initial L2 checkpoint number (typed as CheckpointNumber). This is the first checkpoint number in the Aztec L2 chain. */ // Shadow the export from constants.gen above
|
|
15
|
+
export const INITIAL_L2_CHECKPOINT_NUM = CheckpointNumber(INITIAL_CHECKPOINT_NUM_RAW);
|
|
16
|
+
/** The block header hash for the genesis block 0. */ // Shadow the export from constants.gen above
|
|
17
|
+
// eslint-disable-next-line import-x/export
|
|
18
|
+
export const GENESIS_BLOCK_HEADER_HASH = new Fr(GENESIS_BLOCK_HEADER_HASH_BIGINT);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmluLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy9jb25zdGFudHMuaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -3,78 +3,16 @@ import { dirname, join } from 'path';
|
|
|
3
3
|
import { fileURLToPath } from 'url';
|
|
4
4
|
const NOIR_CONSTANTS_FILE = '../../../../noir-projects/noir-protocol-circuits/crates/types/src/constants.nr';
|
|
5
5
|
const TS_CONSTANTS_FILE = '../constants.gen.ts';
|
|
6
|
-
const CPP_AZTEC_CONSTANTS_FILE = '../../../../barretenberg/cpp/src/barretenberg/
|
|
7
|
-
const PIL_AZTEC_CONSTANTS_FILE = '../../../../barretenberg/cpp/pil/
|
|
8
|
-
// Temp while vm2 is WIP
|
|
9
|
-
const PIL_VM2_AZTEC_CONSTANTS_FILE = '../../../../barretenberg/cpp/pil/vm2/constants_gen.pil';
|
|
6
|
+
const CPP_AZTEC_CONSTANTS_FILE = '../../../../barretenberg/cpp/src/barretenberg/vm2/common/aztec_constants.hpp';
|
|
7
|
+
const PIL_AZTEC_CONSTANTS_FILE = '../../../../barretenberg/cpp/pil/vm2/constants_gen.pil';
|
|
10
8
|
const SOLIDITY_CONSTANTS_FILE = '../../../../l1-contracts/src/core/libraries/ConstantsGen.sol';
|
|
11
9
|
// Whitelist of constants that will be copied to aztec_constants.hpp.
|
|
12
10
|
// We don't copy everything as just a handful are needed, and updating them breaks the cache and triggers expensive bb builds.
|
|
13
11
|
const CPP_CONSTANTS = [
|
|
14
|
-
'
|
|
15
|
-
'
|
|
16
|
-
'
|
|
17
|
-
'
|
|
18
|
-
'GLOBAL_VARIABLES_LENGTH',
|
|
19
|
-
'APPEND_ONLY_TREE_SNAPSHOT_LENGTH',
|
|
20
|
-
'PARTIAL_STATE_REFERENCE_LENGTH',
|
|
21
|
-
'STATE_REFERENCE_LENGTH',
|
|
22
|
-
'HEADER_LENGTH',
|
|
23
|
-
'CALL_CONTEXT_LENGTH',
|
|
24
|
-
'PUBLIC_CIRCUIT_PUBLIC_INPUTS_LENGTH',
|
|
25
|
-
'READ_REQUEST_LENGTH',
|
|
26
|
-
'MAX_ENQUEUED_CALLS_PER_TX',
|
|
27
|
-
'MAX_NOTE_HASHES_PER_TX',
|
|
28
|
-
'MAX_NULLIFIERS_PER_TX',
|
|
29
|
-
'MAX_L2_TO_L1_MSGS_PER_TX',
|
|
30
|
-
'MAX_PUBLIC_LOGS_PER_TX',
|
|
31
|
-
'PUBLIC_LOG_DATA_SIZE_IN_FIELDS',
|
|
32
|
-
'MAX_NOTE_HASH_READ_REQUESTS_PER_CALL',
|
|
33
|
-
'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
|
|
34
|
-
'MAX_NULLIFIER_READ_REQUESTS_PER_CALL',
|
|
35
|
-
'MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL',
|
|
36
|
-
'MAX_L1_TO_L2_MSG_READ_REQUESTS_PER_CALL',
|
|
37
|
-
'CONTRACT_STORAGE_UPDATE_REQUEST_LENGTH',
|
|
38
|
-
'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL',
|
|
39
|
-
'CONTRACT_STORAGE_READ_LENGTH',
|
|
40
|
-
'PUBLIC_INNER_CALL_REQUEST_LENGTH',
|
|
41
|
-
'MAX_PUBLIC_DATA_READS_PER_CALL',
|
|
42
|
-
'MAX_ENQUEUED_CALLS_PER_CALL',
|
|
43
|
-
'NOTE_HASH_LENGTH',
|
|
44
|
-
'MAX_NOTE_HASHES_PER_CALL',
|
|
45
|
-
'NULLIFIER_LENGTH',
|
|
46
|
-
'MAX_NULLIFIERS_PER_CALL',
|
|
47
|
-
'L2_TO_L1_MESSAGE_LENGTH',
|
|
48
|
-
'MAX_L2_TO_L1_MSGS_PER_CALL',
|
|
49
|
-
'LOG_HASH_LENGTH',
|
|
50
|
-
'MAX_PUBLIC_LOGS_PER_CALL',
|
|
51
|
-
'HEADER_LENGTH',
|
|
52
|
-
'GLOBAL_VARIABLES_LENGTH',
|
|
53
|
-
'AZTEC_ADDRESS_LENGTH',
|
|
54
|
-
'START_NOTE_HASH_EXISTS_WRITE_OFFSET',
|
|
55
|
-
'START_NULLIFIER_EXISTS_OFFSET',
|
|
56
|
-
'START_NULLIFIER_NON_EXISTS_OFFSET',
|
|
57
|
-
'START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET',
|
|
58
|
-
'START_SSTORE_WRITE_OFFSET',
|
|
59
|
-
'START_SLOAD_WRITE_OFFSET',
|
|
60
|
-
'START_EMIT_NOTE_HASH_WRITE_OFFSET',
|
|
61
|
-
'START_EMIT_NULLIFIER_WRITE_OFFSET',
|
|
62
|
-
'START_EMIT_L2_TO_L1_MSG_WRITE_OFFSET',
|
|
63
|
-
'START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET',
|
|
64
|
-
'SENDER_KERNEL_INPUTS_COL_OFFSET',
|
|
65
|
-
'ADDRESS_KERNEL_INPUTS_COL_OFFSET',
|
|
66
|
-
'CHAIN_ID_KERNEL_INPUTS_COL_OFFSET',
|
|
67
|
-
'VERSION_KERNEL_INPUTS_COL_OFFSET',
|
|
68
|
-
'BLOCK_NUMBER_KERNEL_INPUTS_COL_OFFSET',
|
|
69
|
-
'TIMESTAMP_KERNEL_INPUTS_COL_OFFSET',
|
|
70
|
-
'FEE_PER_DA_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
71
|
-
'FEE_PER_L2_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
72
|
-
'IS_STATIC_CALL_KERNEL_INPUTS_COL_OFFSET',
|
|
73
|
-
'DA_START_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
74
|
-
'L2_START_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
75
|
-
'DA_END_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
76
|
-
'L2_END_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
77
|
-
'TRANSACTION_FEE_KERNEL_INPUTS_COL_OFFSET',
|
|
12
|
+
'MAX_ETH_ADDRESS_BIT_SIZE',
|
|
13
|
+
'MAX_ETH_ADDRESS_VALUE',
|
|
14
|
+
'GENESIS_BLOCK_HEADER_HASH',
|
|
15
|
+
'GENESIS_ARCHIVE_ROOT',
|
|
78
16
|
'MEM_TAG_U1',
|
|
79
17
|
'MEM_TAG_U8',
|
|
80
18
|
'MEM_TAG_U16',
|
|
@@ -82,66 +20,115 @@ const CPP_CONSTANTS = [
|
|
|
82
20
|
'MEM_TAG_U64',
|
|
83
21
|
'MEM_TAG_U128',
|
|
84
22
|
'MEM_TAG_FF',
|
|
85
|
-
'MAX_L2_GAS_PER_TX_PUBLIC_PORTION',
|
|
86
23
|
'MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS',
|
|
87
24
|
'CANONICAL_AUTH_REGISTRY_ADDRESS',
|
|
88
|
-
'
|
|
89
|
-
'
|
|
25
|
+
'CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS',
|
|
26
|
+
'CONTRACT_CLASS_REGISTRY_CONTRACT_ADDRESS',
|
|
90
27
|
'MULTI_CALL_ENTRYPOINT_ADDRESS',
|
|
91
28
|
'FEE_JUICE_ADDRESS',
|
|
92
|
-
'
|
|
29
|
+
'PUBLIC_CHECKS_ADDRESS',
|
|
93
30
|
'FEE_JUICE_BALANCES_SLOT',
|
|
94
|
-
'MAX_PUBLIC_CALLS_TO_UNIQUE_CONTRACT_CLASS_IDS',
|
|
95
31
|
'UPDATED_CLASS_IDS_SLOT',
|
|
96
|
-
'
|
|
32
|
+
'UPDATES_DELAYED_PUBLIC_MUTABLE_VALUES_LEN',
|
|
33
|
+
'PUBLIC_DATA_TREE_HEIGHT',
|
|
34
|
+
'NULLIFIER_TREE_HEIGHT',
|
|
35
|
+
'NULLIFIER_SUBTREE_HEIGHT',
|
|
36
|
+
'NOTE_HASH_TREE_HEIGHT',
|
|
37
|
+
'L1_TO_L2_MSG_TREE_HEIGHT',
|
|
38
|
+
'ARCHIVE_HEIGHT',
|
|
39
|
+
'TIMESTAMP_OF_CHANGE_BIT_SIZE',
|
|
40
|
+
'UPDATES_DELAYED_PUBLIC_MUTABLE_METADATA_BIT_SIZE',
|
|
41
|
+
'MAX_ENQUEUED_CALLS_PER_TX',
|
|
42
|
+
'MAX_NOTE_HASHES_PER_TX',
|
|
43
|
+
'MAX_NULLIFIERS_PER_TX',
|
|
44
|
+
'MAX_L2_TO_L1_MSGS_PER_TX',
|
|
45
|
+
'MAX_PUBLIC_LOGS_PER_TX',
|
|
46
|
+
'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
|
|
47
|
+
'MAX_PUBLIC_CALLS_TO_UNIQUE_CONTRACT_CLASS_IDS',
|
|
48
|
+
'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
|
|
49
|
+
'MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
|
|
50
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_ROW_IDX',
|
|
51
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_CHAIN_ID_ROW_IDX',
|
|
52
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_VERSION_ROW_IDX',
|
|
53
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_BLOCK_NUMBER_ROW_IDX',
|
|
54
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_SLOT_NUMBER_ROW_IDX',
|
|
55
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_TIMESTAMP_ROW_IDX',
|
|
56
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_COINBASE_ROW_IDX',
|
|
57
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_FEE_RECIPIENT_ROW_IDX',
|
|
58
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_GAS_FEES_ROW_IDX',
|
|
59
|
+
'AVM_PUBLIC_INPUTS_PROTOCOL_CONTRACTS_ROW_IDX',
|
|
60
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_ROW_IDX',
|
|
61
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_L1_TO_L2_MESSAGE_TREE_ROW_IDX',
|
|
62
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_NOTE_HASH_TREE_ROW_IDX',
|
|
63
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_NULLIFIER_TREE_ROW_IDX',
|
|
64
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_PUBLIC_DATA_TREE_ROW_IDX',
|
|
65
|
+
'AVM_PUBLIC_INPUTS_START_GAS_USED_ROW_IDX',
|
|
66
|
+
'AVM_PUBLIC_INPUTS_GAS_SETTINGS_ROW_IDX',
|
|
67
|
+
'AVM_PUBLIC_INPUTS_FEE_PAYER_ROW_IDX',
|
|
68
|
+
'AVM_PUBLIC_INPUTS_PUBLIC_SETUP_CALL_REQUESTS_ROW_IDX',
|
|
69
|
+
'AVM_PUBLIC_INPUTS_PUBLIC_APP_LOGIC_CALL_REQUESTS_ROW_IDX',
|
|
70
|
+
'AVM_PUBLIC_INPUTS_PUBLIC_TEARDOWN_CALL_REQUEST_ROW_IDX',
|
|
71
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_ARRAY_LENGTHS_ROW_IDX',
|
|
72
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_ARRAY_LENGTHS_ROW_IDX',
|
|
73
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_ROW_IDX',
|
|
74
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
|
|
75
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
|
|
76
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
|
|
77
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_ROW_IDX',
|
|
78
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
|
|
79
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
|
|
80
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
|
|
81
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_ROW_IDX',
|
|
82
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_L1_TO_L2_MESSAGE_TREE_ROW_IDX',
|
|
83
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_NOTE_HASH_TREE_ROW_IDX',
|
|
84
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_NULLIFIER_TREE_ROW_IDX',
|
|
85
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_PUBLIC_DATA_TREE_ROW_IDX',
|
|
86
|
+
'AVM_PUBLIC_INPUTS_END_GAS_USED_ROW_IDX',
|
|
87
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_NOTE_HASHES_ROW_IDX',
|
|
88
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_NULLIFIERS_ROW_IDX',
|
|
89
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_L2_TO_L1_MSGS_ROW_IDX',
|
|
90
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_PUBLIC_LOGS_ROW_IDX',
|
|
91
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_PUBLIC_DATA_WRITES_ROW_IDX',
|
|
92
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ROW_IDX',
|
|
93
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
|
|
94
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
|
|
95
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
|
|
96
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_PUBLIC_LOGS_ROW_IDX',
|
|
97
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_PUBLIC_DATA_WRITES_ROW_IDX',
|
|
98
|
+
'AVM_PUBLIC_INPUTS_TRANSACTION_FEE_ROW_IDX',
|
|
99
|
+
'AVM_PUBLIC_INPUTS_REVERTED_ROW_IDX',
|
|
100
|
+
'AVM_PUBLIC_INPUTS_COLUMNS_MAX_LENGTH',
|
|
101
|
+
'AVM_NUM_PUBLIC_INPUT_COLUMNS',
|
|
102
|
+
'AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH',
|
|
103
|
+
'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT',
|
|
104
|
+
'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_ROOT',
|
|
105
|
+
'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_SIZE',
|
|
106
|
+
'NOTE_HASH_TREE_LEAF_COUNT',
|
|
107
|
+
'L1_TO_L2_MSG_TREE_LEAF_COUNT',
|
|
108
|
+
'FLAT_PUBLIC_LOGS_HEADER_LENGTH',
|
|
109
|
+
'FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH',
|
|
110
|
+
'PUBLIC_LOGS_LENGTH',
|
|
111
|
+
'PUBLIC_LOG_HEADER_LENGTH',
|
|
112
|
+
'MAX_PROTOCOL_CONTRACTS',
|
|
113
|
+
'DEFAULT_MAX_DEBUG_LOG_MEMORY_READS'
|
|
97
114
|
];
|
|
98
115
|
const CPP_GENERATORS = [
|
|
116
|
+
'BLOCK_HEADER_HASH',
|
|
99
117
|
'PARTIAL_ADDRESS',
|
|
100
118
|
'CONTRACT_ADDRESS_V1',
|
|
101
|
-
'
|
|
119
|
+
'CONTRACT_CLASS_ID',
|
|
102
120
|
'PUBLIC_KEYS_HASH',
|
|
103
121
|
'NOTE_HASH_NONCE',
|
|
104
122
|
'UNIQUE_NOTE_HASH',
|
|
105
123
|
'SILOED_NOTE_HASH',
|
|
106
|
-
'
|
|
107
|
-
'
|
|
124
|
+
'SILOED_NULLIFIER',
|
|
125
|
+
'PUBLIC_LEAF_SLOT',
|
|
126
|
+
'PUBLIC_STORAGE_MAP_SLOT',
|
|
127
|
+
'PUBLIC_CALLDATA',
|
|
128
|
+
'PUBLIC_BYTECODE'
|
|
108
129
|
];
|
|
109
130
|
const PIL_CONSTANTS = [
|
|
110
|
-
'
|
|
111
|
-
'MAX_NULLIFIER_READ_REQUESTS_PER_CALL',
|
|
112
|
-
'MAX_NULLIFIER_NON_EXISTENT_READ_REQUESTS_PER_CALL',
|
|
113
|
-
'MAX_L1_TO_L2_MSG_READ_REQUESTS_PER_CALL',
|
|
114
|
-
'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_CALL',
|
|
115
|
-
'MAX_PUBLIC_DATA_READS_PER_CALL',
|
|
116
|
-
'MAX_ENQUEUED_CALLS_PER_CALL',
|
|
117
|
-
'MAX_NOTE_HASHES_PER_CALL',
|
|
118
|
-
'MAX_NULLIFIERS_PER_CALL',
|
|
119
|
-
'MAX_L2_TO_L1_MSGS_PER_CALL',
|
|
120
|
-
'MAX_PUBLIC_LOGS_PER_CALL',
|
|
121
|
-
'START_NOTE_HASH_EXISTS_WRITE_OFFSET',
|
|
122
|
-
'START_NULLIFIER_EXISTS_OFFSET',
|
|
123
|
-
'START_NULLIFIER_NON_EXISTS_OFFSET',
|
|
124
|
-
'START_L1_TO_L2_MSG_EXISTS_WRITE_OFFSET',
|
|
125
|
-
'START_SSTORE_WRITE_OFFSET',
|
|
126
|
-
'START_SLOAD_WRITE_OFFSET',
|
|
127
|
-
'START_EMIT_NOTE_HASH_WRITE_OFFSET',
|
|
128
|
-
'START_EMIT_NULLIFIER_WRITE_OFFSET',
|
|
129
|
-
'START_EMIT_L2_TO_L1_MSG_WRITE_OFFSET',
|
|
130
|
-
'START_EMIT_UNENCRYPTED_LOG_WRITE_OFFSET',
|
|
131
|
-
'SENDER_KERNEL_INPUTS_COL_OFFSET',
|
|
132
|
-
'ADDRESS_KERNEL_INPUTS_COL_OFFSET',
|
|
133
|
-
'CHAIN_ID_KERNEL_INPUTS_COL_OFFSET',
|
|
134
|
-
'VERSION_KERNEL_INPUTS_COL_OFFSET',
|
|
135
|
-
'BLOCK_NUMBER_KERNEL_INPUTS_COL_OFFSET',
|
|
136
|
-
'TIMESTAMP_KERNEL_INPUTS_COL_OFFSET',
|
|
137
|
-
'FEE_PER_DA_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
138
|
-
'FEE_PER_L2_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
139
|
-
'IS_STATIC_CALL_KERNEL_INPUTS_COL_OFFSET',
|
|
140
|
-
'DA_START_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
141
|
-
'L2_START_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
142
|
-
'DA_END_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
143
|
-
'L2_END_GAS_KERNEL_INPUTS_COL_OFFSET',
|
|
144
|
-
'TRANSACTION_FEE_KERNEL_INPUTS_COL_OFFSET',
|
|
131
|
+
'MAX_ETH_ADDRESS_VALUE',
|
|
145
132
|
'MEM_TAG_U1',
|
|
146
133
|
'MEM_TAG_U8',
|
|
147
134
|
'MEM_TAG_U16',
|
|
@@ -149,18 +136,196 @@ const PIL_CONSTANTS = [
|
|
|
149
136
|
'MEM_TAG_U64',
|
|
150
137
|
'MEM_TAG_U128',
|
|
151
138
|
'MEM_TAG_FF',
|
|
152
|
-
'
|
|
139
|
+
'AVM_BITWISE_AND_OP_ID',
|
|
140
|
+
'AVM_BITWISE_OR_OP_ID',
|
|
141
|
+
'AVM_BITWISE_XOR_OP_ID',
|
|
142
|
+
'AVM_KECCAKF1600_NUM_ROUNDS',
|
|
143
|
+
'AVM_KECCAKF1600_STATE_SIZE',
|
|
144
|
+
'AVM_TX_PHASE_VALUE_START',
|
|
145
|
+
'AVM_TX_PHASE_VALUE_SETUP',
|
|
146
|
+
'AVM_TX_PHASE_VALUE_LAST',
|
|
147
|
+
'AVM_HIGHEST_MEM_ADDRESS',
|
|
148
|
+
'AVM_MEMORY_NUM_BITS',
|
|
149
|
+
'AVM_MEMORY_SIZE',
|
|
150
|
+
'MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS',
|
|
151
|
+
'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
|
|
152
|
+
'MAX_NOTE_HASHES_PER_TX',
|
|
153
|
+
'GRUMPKIN_ONE_X',
|
|
154
|
+
'GRUMPKIN_ONE_Y',
|
|
155
|
+
'AVM_PC_SIZE_IN_BITS',
|
|
156
|
+
'PUBLIC_DATA_TREE_HEIGHT',
|
|
157
|
+
'NULLIFIER_TREE_HEIGHT',
|
|
158
|
+
'NOTE_HASH_TREE_HEIGHT',
|
|
159
|
+
'L1_TO_L2_MSG_TREE_HEIGHT',
|
|
160
|
+
'UPDATED_CLASS_IDS_SLOT',
|
|
161
|
+
'UPDATES_DELAYED_PUBLIC_MUTABLE_VALUES_LEN',
|
|
162
|
+
'CANONICAL_AUTH_REGISTRY_ADDRESS',
|
|
163
|
+
'CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS',
|
|
164
|
+
'CONTRACT_CLASS_REGISTRY_CONTRACT_ADDRESS',
|
|
165
|
+
'MULTI_CALL_ENTRYPOINT_ADDRESS',
|
|
166
|
+
'FEE_JUICE_ADDRESS',
|
|
167
|
+
'PUBLIC_CHECKS_ADDRESS',
|
|
168
|
+
'FEE_JUICE_BALANCES_SLOT',
|
|
169
|
+
'TIMESTAMP_OF_CHANGE_BIT_SIZE',
|
|
170
|
+
'UPDATES_DELAYED_PUBLIC_MUTABLE_METADATA_BIT_SIZE',
|
|
171
|
+
'UPDATES_SHARED_MUTABLE_METADATA_BIT_SIZE',
|
|
172
|
+
'MAX_ENQUEUED_CALLS_PER_TX',
|
|
173
|
+
'MAX_NOTE_HASHES_PER_TX',
|
|
174
|
+
'MAX_NULLIFIERS_PER_TX',
|
|
175
|
+
'MAX_L2_TO_L1_MSGS_PER_TX',
|
|
176
|
+
'MAX_PUBLIC_LOGS_PER_TX',
|
|
177
|
+
'MAX_PUBLIC_CALLS_TO_UNIQUE_CONTRACT_CLASS_IDS',
|
|
178
|
+
'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
|
|
179
|
+
'MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
|
|
180
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_ROW_IDX',
|
|
181
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_CHAIN_ID_ROW_IDX',
|
|
182
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_VERSION_ROW_IDX',
|
|
183
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_BLOCK_NUMBER_ROW_IDX',
|
|
184
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_SLOT_NUMBER_ROW_IDX',
|
|
185
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_TIMESTAMP_ROW_IDX',
|
|
186
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_COINBASE_ROW_IDX',
|
|
187
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_FEE_RECIPIENT_ROW_IDX',
|
|
188
|
+
'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_GAS_FEES_ROW_IDX',
|
|
189
|
+
'AVM_PUBLIC_INPUTS_PROTOCOL_CONTRACTS_ROW_IDX',
|
|
190
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_ROW_IDX',
|
|
191
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_L1_TO_L2_MESSAGE_TREE_ROW_IDX',
|
|
192
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_NOTE_HASH_TREE_ROW_IDX',
|
|
193
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_NULLIFIER_TREE_ROW_IDX',
|
|
194
|
+
'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_PUBLIC_DATA_TREE_ROW_IDX',
|
|
195
|
+
'AVM_PUBLIC_INPUTS_START_GAS_USED_ROW_IDX',
|
|
196
|
+
'AVM_PUBLIC_INPUTS_GAS_SETTINGS_ROW_IDX',
|
|
197
|
+
'AVM_PUBLIC_INPUTS_GAS_SETTINGS_GAS_LIMITS_ROW_IDX',
|
|
198
|
+
'AVM_PUBLIC_INPUTS_GAS_SETTINGS_TEARDOWN_GAS_LIMITS_ROW_IDX',
|
|
199
|
+
'AVM_PUBLIC_INPUTS_FEE_PAYER_ROW_IDX',
|
|
200
|
+
'AVM_PUBLIC_INPUTS_PUBLIC_SETUP_CALL_REQUESTS_ROW_IDX',
|
|
201
|
+
'AVM_PUBLIC_INPUTS_PUBLIC_APP_LOGIC_CALL_REQUESTS_ROW_IDX',
|
|
202
|
+
'AVM_PUBLIC_INPUTS_PUBLIC_TEARDOWN_CALL_REQUEST_ROW_IDX',
|
|
203
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_ARRAY_LENGTHS_ROW_IDX',
|
|
204
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_ARRAY_LENGTHS_ROW_IDX',
|
|
205
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_ROW_IDX',
|
|
206
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
|
|
207
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
|
|
208
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
|
|
209
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_ROW_IDX',
|
|
210
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
|
|
211
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
|
|
212
|
+
'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
|
|
213
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_ROW_IDX',
|
|
214
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_L1_TO_L2_MESSAGE_TREE_ROW_IDX',
|
|
215
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_NOTE_HASH_TREE_ROW_IDX',
|
|
216
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_NULLIFIER_TREE_ROW_IDX',
|
|
217
|
+
'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_PUBLIC_DATA_TREE_ROW_IDX',
|
|
218
|
+
'AVM_PUBLIC_INPUTS_END_GAS_USED_ROW_IDX',
|
|
219
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_NOTE_HASHES_ROW_IDX',
|
|
220
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_NULLIFIERS_ROW_IDX',
|
|
221
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_L2_TO_L1_MSGS_ROW_IDX',
|
|
222
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_PUBLIC_LOGS_ROW_IDX',
|
|
223
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_PUBLIC_DATA_WRITES_ROW_IDX',
|
|
224
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ROW_IDX',
|
|
225
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
|
|
226
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
|
|
227
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
|
|
228
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_PUBLIC_LOGS_ROW_IDX',
|
|
229
|
+
'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_PUBLIC_DATA_WRITES_ROW_IDX',
|
|
230
|
+
'AVM_PUBLIC_INPUTS_TRANSACTION_FEE_ROW_IDX',
|
|
231
|
+
'AVM_PUBLIC_INPUTS_REVERTED_ROW_IDX',
|
|
232
|
+
'AVM_PUBLIC_INPUTS_COLUMNS_MAX_LENGTH',
|
|
233
|
+
'AVM_NUM_PUBLIC_INPUT_COLUMNS',
|
|
234
|
+
'AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH',
|
|
235
|
+
'AVM_SUBTRACE_ID_EXECUTION',
|
|
236
|
+
'AVM_SUBTRACE_ID_ALU',
|
|
237
|
+
'AVM_SUBTRACE_ID_CAST',
|
|
238
|
+
'AVM_SUBTRACE_ID_SET',
|
|
239
|
+
'AVM_SUBTRACE_ID_BITWISE',
|
|
240
|
+
'AVM_SUBTRACE_ID_POSEIDON2_PERM',
|
|
241
|
+
'AVM_SUBTRACE_ID_TO_RADIX',
|
|
242
|
+
'AVM_SUBTRACE_ID_ECC',
|
|
243
|
+
'AVM_SUBTRACE_ID_KECCAKF1600',
|
|
244
|
+
'AVM_SUBTRACE_ID_CALLDATA_COPY',
|
|
245
|
+
'AVM_SUBTRACE_ID_SHA256_COMPRESSION',
|
|
246
|
+
'AVM_SUBTRACE_ID_RETURNDATA_COPY',
|
|
247
|
+
'AVM_DYN_GAS_ID_CALLDATACOPY',
|
|
248
|
+
'AVM_DYN_GAS_ID_RETURNDATACOPY',
|
|
249
|
+
'AVM_DYN_GAS_ID_TORADIX',
|
|
250
|
+
'AVM_DYN_GAS_ID_BITWISE',
|
|
251
|
+
'AVM_DYN_GAS_ID_EMITUNENCRYPTEDLOG',
|
|
252
|
+
'AVM_DYN_GAS_ID_SSTORE',
|
|
253
|
+
'AVM_SUBTRACE_ID_GETCONTRACTINSTANCE',
|
|
254
|
+
'AVM_SUBTRACE_ID_EMITUNENCRYPTEDLOG',
|
|
255
|
+
'AVM_EXEC_OP_ID_GETENVVAR',
|
|
256
|
+
'AVM_EXEC_OP_ID_MOV',
|
|
257
|
+
'AVM_EXEC_OP_ID_JUMP',
|
|
258
|
+
'AVM_EXEC_OP_ID_JUMPI',
|
|
259
|
+
'AVM_EXEC_OP_ID_CALL',
|
|
260
|
+
'AVM_EXEC_OP_ID_STATICCALL',
|
|
261
|
+
'AVM_EXEC_OP_ID_INTERNALCALL',
|
|
262
|
+
'AVM_EXEC_OP_ID_INTERNALRETURN',
|
|
263
|
+
'AVM_EXEC_OP_ID_RETURN',
|
|
264
|
+
'AVM_EXEC_OP_ID_REVERT',
|
|
265
|
+
'AVM_EXEC_OP_ID_SUCCESSCOPY',
|
|
266
|
+
'AVM_EXEC_OP_ID_ALU_ADD',
|
|
267
|
+
'AVM_EXEC_OP_ID_ALU_SUB',
|
|
268
|
+
'AVM_EXEC_OP_ID_ALU_MUL',
|
|
269
|
+
'AVM_EXEC_OP_ID_ALU_DIV',
|
|
270
|
+
'AVM_EXEC_OP_ID_ALU_FDIV',
|
|
271
|
+
'AVM_EXEC_OP_ID_ALU_EQ',
|
|
272
|
+
'AVM_EXEC_OP_ID_ALU_LT',
|
|
273
|
+
'AVM_EXEC_OP_ID_ALU_LTE',
|
|
274
|
+
'AVM_EXEC_OP_ID_ALU_NOT',
|
|
275
|
+
'AVM_EXEC_OP_ID_ALU_SHL',
|
|
276
|
+
'AVM_EXEC_OP_ID_ALU_SHR',
|
|
277
|
+
'AVM_EXEC_OP_ID_ALU_TRUNCATE',
|
|
278
|
+
'AVM_EXEC_OP_ID_RETURNDATASIZE',
|
|
279
|
+
'AVM_EXEC_OP_ID_DEBUGLOG',
|
|
280
|
+
'AVM_EXEC_OP_ID_SLOAD',
|
|
281
|
+
'AVM_EXEC_OP_ID_SSTORE',
|
|
282
|
+
'AVM_EXEC_OP_ID_NOTEHASH_EXISTS',
|
|
283
|
+
'AVM_EXEC_OP_ID_EMIT_NOTEHASH',
|
|
284
|
+
'AVM_EXEC_OP_ID_L1_TO_L2_MESSAGE_EXISTS',
|
|
285
|
+
'AVM_EXEC_OP_ID_NULLIFIER_EXISTS',
|
|
286
|
+
'AVM_EXEC_OP_ID_EMIT_NULLIFIER',
|
|
287
|
+
'AVM_EXEC_OP_ID_SENDL2TOL1MSG',
|
|
288
|
+
'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT',
|
|
289
|
+
'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_ROOT',
|
|
290
|
+
'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_SIZE',
|
|
291
|
+
'AVM_RETRIEVED_BYTECODES_TREE_HEIGHT',
|
|
292
|
+
'AVM_RETRIEVED_BYTECODES_TREE_INITIAL_ROOT',
|
|
293
|
+
'AVM_RETRIEVED_BYTECODES_TREE_INITIAL_SIZE',
|
|
294
|
+
'NOTE_HASH_TREE_LEAF_COUNT',
|
|
295
|
+
'L1_TO_L2_MSG_TREE_LEAF_COUNT',
|
|
296
|
+
'FLAT_PUBLIC_LOGS_HEADER_LENGTH',
|
|
297
|
+
'FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH',
|
|
298
|
+
'PUBLIC_LOGS_LENGTH',
|
|
299
|
+
'PUBLIC_LOG_HEADER_LENGTH',
|
|
300
|
+
'MAX_PROTOCOL_CONTRACTS'
|
|
153
301
|
];
|
|
154
302
|
const PIL_GENERATORS = [
|
|
155
303
|
'PARTIAL_ADDRESS',
|
|
156
304
|
'CONTRACT_ADDRESS_V1',
|
|
157
|
-
'
|
|
305
|
+
'CONTRACT_CLASS_ID',
|
|
158
306
|
'PUBLIC_KEYS_HASH',
|
|
159
307
|
'NOTE_HASH_NONCE',
|
|
160
308
|
'UNIQUE_NOTE_HASH',
|
|
161
309
|
'SILOED_NOTE_HASH',
|
|
162
|
-
'
|
|
163
|
-
'
|
|
310
|
+
'SILOED_NULLIFIER',
|
|
311
|
+
'PUBLIC_LEAF_SLOT',
|
|
312
|
+
'PUBLIC_STORAGE_MAP_SLOT',
|
|
313
|
+
'PUBLIC_CALLDATA',
|
|
314
|
+
'PUBLIC_BYTECODE'
|
|
315
|
+
];
|
|
316
|
+
const SOLIDITY_CONSTANTS = [
|
|
317
|
+
'MAX_FIELD_VALUE',
|
|
318
|
+
'MAX_L2_TO_L1_MSGS_PER_TX',
|
|
319
|
+
'EMPTY_EPOCH_OUT_HASH',
|
|
320
|
+
'L1_TO_L2_MSG_SUBTREE_HEIGHT',
|
|
321
|
+
'NUM_MSGS_PER_BASE_PARITY',
|
|
322
|
+
'NUM_BASE_PARITY_PER_ROOT_PARITY',
|
|
323
|
+
'BLS12_POINT_COMPRESSED_BYTES',
|
|
324
|
+
'ROOT_ROLLUP_PUBLIC_INPUTS_LENGTH',
|
|
325
|
+
'INITIAL_CHECKPOINT_NUMBER',
|
|
326
|
+
'GENESIS_ARCHIVE_ROOT',
|
|
327
|
+
'FEE_JUICE_ADDRESS',
|
|
328
|
+
'AZTEC_MAX_EPOCH_DURATION'
|
|
164
329
|
];
|
|
165
330
|
/**
|
|
166
331
|
* Processes a collection of constants and generates code to export them as TypeScript constants.
|
|
@@ -183,14 +348,19 @@ const PIL_GENERATORS = [
|
|
|
183
348
|
*/ function processConstantsCpp(constants, generatorIndices) {
|
|
184
349
|
const code = [];
|
|
185
350
|
Object.entries(constants).forEach(([key, value])=>{
|
|
186
|
-
if (CPP_CONSTANTS.includes(key) || key.startsWith('AVM_')
|
|
187
|
-
|
|
188
|
-
|
|
351
|
+
if (CPP_CONSTANTS.includes(key) || key.startsWith('AVM_')) {
|
|
352
|
+
if (BigInt(value) <= 2n ** 31n - 1n) {
|
|
353
|
+
code.push(`#define ${key} ${value}`);
|
|
354
|
+
} else if (BigInt(value) <= 2n ** 64n - 1n) {
|
|
355
|
+
code.push(`#define ${key} 0x${BigInt(value).toString(16)}`); // hex literals
|
|
356
|
+
} else {
|
|
357
|
+
code.push(`#define ${key} "0x${BigInt(value).toString(16).padStart(64, '0')}"`); // stringify large numbers
|
|
358
|
+
}
|
|
189
359
|
}
|
|
190
360
|
});
|
|
191
361
|
Object.entries(generatorIndices).forEach(([key, value])=>{
|
|
192
362
|
if (CPP_GENERATORS.includes(key)) {
|
|
193
|
-
code.push(`#define
|
|
363
|
+
code.push(`#define DOM_SEP__${key} ${value}UL`);
|
|
194
364
|
}
|
|
195
365
|
});
|
|
196
366
|
return code.join('\n');
|
|
@@ -210,7 +380,7 @@ const PIL_GENERATORS = [
|
|
|
210
380
|
});
|
|
211
381
|
Object.entries(generatorIndices).forEach(([key, value])=>{
|
|
212
382
|
if (PIL_GENERATORS.includes(key)) {
|
|
213
|
-
code.push(` pol
|
|
383
|
+
code.push(` pol DOM_SEP__${key} = ${value};`);
|
|
214
384
|
}
|
|
215
385
|
});
|
|
216
386
|
return code.join('\n');
|
|
@@ -239,7 +409,7 @@ const PIL_GENERATORS = [
|
|
|
239
409
|
*/ function processConstantsSolidity(constants, prefix = '') {
|
|
240
410
|
const code = [];
|
|
241
411
|
Object.entries(constants).forEach(([key, value])=>{
|
|
242
|
-
if (
|
|
412
|
+
if (SOLIDITY_CONSTANTS.includes(key)) {
|
|
243
413
|
code.push(` uint256 internal constant ${prefix}${key} = ${value};`);
|
|
244
414
|
}
|
|
245
415
|
});
|
|
@@ -249,7 +419,7 @@ const PIL_GENERATORS = [
|
|
|
249
419
|
* Generate the constants file in Typescript.
|
|
250
420
|
*/ function generateTypescriptConstants({ constants, generatorIndexEnum }, targetPath) {
|
|
251
421
|
const result = [
|
|
252
|
-
'
|
|
422
|
+
'// GENERATED FILE - DO NOT EDIT, RUN yarn remake-constants',
|
|
253
423
|
processConstantsTS(constants),
|
|
254
424
|
processEnumTS('GeneratorIndex', generatorIndexEnum)
|
|
255
425
|
].join('\n');
|
|
@@ -319,7 +489,7 @@ ${processConstantsSolidity(constants)}
|
|
|
319
489
|
{
|
|
320
490
|
const [, name, _type, value, end] = line.match(/global\s+(\w+)(\s*:\s*\w+)?\s*=\s*([^;]*)(;)?/) || [];
|
|
321
491
|
if (name && value) {
|
|
322
|
-
const [, indexName] = name.match(/
|
|
492
|
+
const [, indexName] = name.match(/DOM_SEP__(\w+)/) || [];
|
|
323
493
|
if (indexName) {
|
|
324
494
|
// Generator index.
|
|
325
495
|
generatorIndexEnum[indexName] = +value;
|
|
@@ -390,9 +560,10 @@ ${processConstantsSolidity(constants)}
|
|
|
390
560
|
// However, (1) the bigints need to be initialized from strings; (2) everything needs to
|
|
391
561
|
// be a bigint, even the actual constant values!
|
|
392
562
|
const prelude = expressions.map(([name, rhs])=>{
|
|
393
|
-
const guardedRhs = rhs// Remove 'as u8' and 'as
|
|
394
|
-
.replaceAll(' as u8', '').replaceAll(' as u32', '')// Remove the 'AztecAddress::from_field(...)' pattern
|
|
395
|
-
|
|
563
|
+
const guardedRhs = rhs// Remove 'as u8', 'as u32' and 'as u64' castings
|
|
564
|
+
.replaceAll(' as u8', '').replaceAll(' as u32', '').replaceAll(' as u64', '')// Remove the 'AztecAddress::from_field(...)' pattern.
|
|
565
|
+
// Also copes with the noir formatter re-formatting over multiple lines.
|
|
566
|
+
.replace(/AztecAddress::from_field\(\s*(0x[a-fA-F0-9]+|\d+)\s*,?\s*\)/gs, '$1')// We make some space around the parentheses, so that constant numbers are still split.
|
|
396
567
|
.replace(/\(/g, '( ').replace(/\)/g, ' )')// We also make some space around common operators
|
|
397
568
|
.replace(/\+/g, ' + ').replace(/(?<!\/)\*(?!\/)/, ' * ')// We split the expression into terms...
|
|
398
569
|
.split(/\s+/)// ...and then we convert each term to a BigInt if it is a number.
|
|
@@ -421,12 +592,9 @@ ${processConstantsSolidity(constants)}
|
|
|
421
592
|
// Cpp
|
|
422
593
|
const cppTargetPath = join(__dirname, CPP_AZTEC_CONSTANTS_FILE);
|
|
423
594
|
generateCppConstants(parsedContent, cppTargetPath);
|
|
424
|
-
// PIL
|
|
595
|
+
// PIL
|
|
425
596
|
const pilTargetPath = join(__dirname, PIL_AZTEC_CONSTANTS_FILE);
|
|
426
597
|
generatePilConstants(parsedContent, pilTargetPath);
|
|
427
|
-
// PIL - VM2
|
|
428
|
-
const pilVm2TargetPath = join(__dirname, PIL_VM2_AZTEC_CONSTANTS_FILE);
|
|
429
|
-
generatePilConstants(parsedContent, pilVm2TargetPath);
|
|
430
598
|
// Solidity
|
|
431
599
|
const solidityTargetPath = join(__dirname, SOLIDITY_CONSTANTS_FILE);
|
|
432
600
|
fs.mkdirSync(dirname(solidityTargetPath), {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/constants",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.1-commit.0208eb9",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"inherits": [
|
|
6
6
|
"../package.common.json"
|
|
@@ -9,26 +9,26 @@
|
|
|
9
9
|
".": "./dest/constants.js"
|
|
10
10
|
},
|
|
11
11
|
"scripts": {
|
|
12
|
-
"build": "yarn clean && tsc
|
|
13
|
-
"build:dev": "tsc
|
|
12
|
+
"build": "yarn clean && ../scripts/tsc.sh",
|
|
13
|
+
"build:dev": "../scripts/tsc.sh --watch",
|
|
14
14
|
"clean": "rm -rf ./dest .tsbuildinfo",
|
|
15
|
-
"formatting": "run -T prettier --check ./src && run -T eslint ./src",
|
|
16
|
-
"formatting:fix": "run -T eslint --fix ./src && run -T prettier -w ./src",
|
|
17
15
|
"remake-constants": "node --loader @swc-node/register/esm src/scripts/constants.in.ts && cd ../../l1-contracts && forge fmt",
|
|
18
16
|
"test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests --maxWorkers=${JEST_MAX_WORKERS:-8}"
|
|
19
17
|
},
|
|
20
18
|
"dependencies": {
|
|
19
|
+
"@aztec/foundation": "0.0.1-commit.0208eb9",
|
|
21
20
|
"tslib": "^2.4.0"
|
|
22
21
|
},
|
|
23
22
|
"devDependencies": {
|
|
24
|
-
"@jest/globals": "^
|
|
25
|
-
"@types/jest": "^
|
|
26
|
-
"@types/node": "^
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
23
|
+
"@jest/globals": "^30.0.0",
|
|
24
|
+
"@types/jest": "^30.0.0",
|
|
25
|
+
"@types/node": "^22.15.17",
|
|
26
|
+
"@typescript/native-preview": "7.0.0-dev.20260113.1",
|
|
27
|
+
"eslint": "^9.26.0",
|
|
28
|
+
"jest": "^30.0.0",
|
|
29
|
+
"prettier": "^3.5.3",
|
|
30
30
|
"ts-node": "^10.9.1",
|
|
31
|
-
"typescript": "^5.
|
|
31
|
+
"typescript": "^5.3.3"
|
|
32
32
|
},
|
|
33
33
|
"files": [
|
|
34
34
|
"dest",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
],
|
|
39
39
|
"types": "./dest/index.d.ts",
|
|
40
40
|
"engines": {
|
|
41
|
-
"node": ">=
|
|
41
|
+
"node": ">=20.10"
|
|
42
42
|
},
|
|
43
43
|
"jest": {
|
|
44
44
|
"extensionsToTreatAsEsm": [
|
|
@@ -71,6 +71,10 @@
|
|
|
71
71
|
"testTimeout": 120000,
|
|
72
72
|
"setupFiles": [
|
|
73
73
|
"../../foundation/src/jest/setup.mjs"
|
|
74
|
+
],
|
|
75
|
+
"testEnvironment": "../../foundation/src/jest/env.mjs",
|
|
76
|
+
"setupFilesAfterEnv": [
|
|
77
|
+
"../../foundation/src/jest/setupAfterEnv.mjs"
|
|
74
78
|
]
|
|
75
79
|
}
|
|
76
80
|
}
|