64 for (
const auto& log : contract_deployment_data.
private_logs) {
80 .
id = contract_class.
id,
110 std::vector<uint8_t> packed_bytecode;
111 packed_bytecode.reserve(packed_bytecode_len);
112 for (
size_t i = 0; i < packed_bytecode_len; ++i) {
116 packed_bytecode.insert(packed_bytecode.end(), f.begin() + 1, f.end());
121 .artifact_hash = artifact_hash,
122 .private_functions_root = private_functions_root,
123 .packed_bytecode = packed_bytecode,
147 .deployer = deployer,
148 .current_contract_class_id = contract_class_id,
149 .original_contract_class_id = contract_class_id,
150 .initialization_hash = initialization_hash,
151 .public_keys = public_keys,
196 { simulation::MerkleTreeId::NULLIFIER_TREE, 128 },
197 { simulation::MerkleTreeId::PUBLIC_DATA_TREE, 128 },
199 uint32_t initial_header_generator_point = 28;
229 fuzz_info(
"Registering contract address in world state: ", contract_nullifier.
nullifier);
231 ws->insert_indexed_leaves<
NullifierLeafValue>(MerkleTreeId::NULLIFIER_TREE, { contract_nullifier }, fork_id);
236 if (fee_payer == 0) {
250 ws->update_public_data(public_data, fork_id);
259 ws->append_leaves(MerkleTreeId::NOTE_HASH_TREE, note_hashes, fork_id);
260 ws->append_leaves(MerkleTreeId::NOTE_HASH_TREE, std::vector<FF>(padding_leaves,
FF(0)), fork_id);
std::shared_ptr< Napi::ThreadSafeFunction > instance
#define L1_TO_L2_MSG_TREE_HEIGHT
#define FEE_JUICE_ADDRESS
#define NULLIFIER_TREE_HEIGHT
#define MAX_NOTE_HASHES_PER_TX
#define DOM_SEP__PUBLIC_LEAF_INDEX
#define FEE_JUICE_BALANCES_SLOT
#define CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS
#define NOTE_HASH_TREE_HEIGHT
#define PUBLIC_DATA_TREE_HEIGHT
std::optional< ContractClass > get_contract_class(const ContractClassId &class_id) const override
void add_contracts(const ContractDeploymentData &contract_deployment_data) override
void revert_checkpoint() override
std::unordered_map< ContractClassId, ContractClass > contract_classes
ContractClass from_logs(const ContractClassLog &log) const
std::vector< std::pair< AztecAddress, ContractInstance > > contract_instances_vector
std::optional< ContractInstance > get_contract_instance(const AztecAddress &address) const override
ContractDBInterface methods.
std::vector< ContractClass > contract_classes_vector
void commit_checkpoint() override
void add_contract_class(const ContractClassId &class_id, const ContractClassWithCommitment &contract_class)
void create_checkpoint() override
std::optional< FF > get_bytecode_commitment(const ContractClassId &class_id) const override
std::unordered_map< AztecAddress, ContractInstance > contract_instances
void add_contract_instance(const AztecAddress &address, const ContractInstance &contract_instance)
std::optional< std::string > get_debug_function_name(const AztecAddress &address, const FunctionSelector &selector) const override
std::stack< Checkpoint > checkpoints
static constexpr const char * DATA_DIR
std::unique_ptr< world_state::WorldState > ws
void initialize_world_state()
world_state::WorldStateRevision fork()
void register_contract_address(const AztecAddress &contract_address)
static constexpr uint64_t MAP_SIZE_KB
void append_note_hashes(const std::vector< FF > ¬e_hashes)
std::stack< uint64_t > fork_ids
void write_fee_payer_balance(const AztecAddress &fee_payer, const FF &balance)
static FuzzerWorldStateManager * instance
FuzzerWorldStateManager methods.
world_state::WorldStateRevision get_current_revision() const
void public_data_write(const bb::crypto::merkle_tree::PublicDataLeafValue &public_data)
static FF hash(const std::vector< FF > &input)
Hashes a vector of field elements.
AztecAddress contract_address
FF compute_public_bytecode_commitment(std::span< const uint8_t > bytecode)
::bb::crypto::merkle_tree::PublicDataLeafValue PublicDataLeafValue
FF unconstrained_silo_nullifier(const AztecAddress &contract_address, const FF &nullifier)
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
std::vector< uint8_t > to_buffer(T const &value)
ContractClassLogFields fields
FF private_functions_root
std::vector< uint8_t > packed_bytecode
std::vector< PrivateLog > private_logs
std::vector< ContractClassLog > contract_class_logs
AffinePoint nullifier_key
std::unordered_map< ContractClassId, ContractClass > contract_classes