Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::avm2::simulation::HintingContractsDB Class Referencefinal

#include <hinting_dbs.hpp>

Inheritance diagram for bb::avm2::simulation::HintingContractsDB:
bb::avm2::simulation::ContractDBInterface

Public Member Functions

 HintingContractsDB (ContractDBInterface &db)
 
std::optional< ContractInstanceget_contract_instance (const AztecAddress &address) const override
 
std::optional< ContractClassget_contract_class (const ContractClassId &class_id) const override
 
std::optional< FFget_bytecode_commitment (const ContractClassId &class_id) const override
 
std::optional< std::string > get_debug_function_name (const AztecAddress &address, const FunctionSelector &selector) const override
 
void add_contracts (const ContractDeploymentData &contract_deployment_data) override
 
void create_checkpoint () override
 
void commit_checkpoint () override
 
void revert_checkpoint () override
 
void dump_hints (ExecutionHints &hints)
 
- Public Member Functions inherited from bb::avm2::simulation::ContractDBInterface
virtual ~ContractDBInterface ()=default
 

Private Member Functions

uint32_t get_checkpoint_id () const
 

Private Attributes

ContractDBInterfacedb
 
uint32_t checkpoint_action_counter = 0
 
uint32_t next_checkpoint_id = 1
 
std::stack< uint32_t > checkpoint_stack { { 0 } }
 
MappedContractHints contract_hints
 

Detailed Description

Definition at line 22 of file hinting_dbs.hpp.

Constructor & Destructor Documentation

◆ HintingContractsDB()

bb::avm2::simulation::HintingContractsDB::HintingContractsDB ( ContractDBInterface db)
inline

Definition at line 24 of file hinting_dbs.hpp.

Member Function Documentation

◆ add_contracts()

void bb::avm2::simulation::HintingContractsDB::add_contracts ( const ContractDeploymentData contract_deployment_data)
overridevirtual

Implements bb::avm2::simulation::ContractDBInterface.

Definition at line 92 of file hinting_dbs.cpp.

◆ commit_checkpoint()

void bb::avm2::simulation::HintingContractsDB::commit_checkpoint ( )
overridevirtual

Implements bb::avm2::simulation::ContractDBInterface.

Definition at line 116 of file hinting_dbs.cpp.

◆ create_checkpoint()

void bb::avm2::simulation::HintingContractsDB::create_checkpoint ( )
overridevirtual

Implements bb::avm2::simulation::ContractDBInterface.

Definition at line 98 of file hinting_dbs.cpp.

◆ dump_hints()

void bb::avm2::simulation::HintingContractsDB::dump_hints ( ExecutionHints hints)

Definition at line 157 of file hinting_dbs.cpp.

◆ get_bytecode_commitment()

std::optional< FF > bb::avm2::simulation::HintingContractsDB::get_bytecode_commitment ( const ContractClassId class_id) const
overridevirtual

Implements bb::avm2::simulation::ContractDBInterface.

Definition at line 66 of file hinting_dbs.cpp.

◆ get_checkpoint_id()

uint32_t bb::avm2::simulation::HintingContractsDB::get_checkpoint_id ( ) const
private

Definition at line 152 of file hinting_dbs.cpp.

◆ get_contract_class()

std::optional< ContractClass > bb::avm2::simulation::HintingContractsDB::get_contract_class ( const ContractClassId class_id) const
overridevirtual

Implements bb::avm2::simulation::ContractDBInterface.

Definition at line 46 of file hinting_dbs.cpp.

◆ get_contract_instance()

std::optional< ContractInstance > bb::avm2::simulation::HintingContractsDB::get_contract_instance ( const AztecAddress address) const
overridevirtual

Implements bb::avm2::simulation::ContractDBInterface.

Definition at line 19 of file hinting_dbs.cpp.

◆ get_debug_function_name()

std::optional< std::string > bb::avm2::simulation::HintingContractsDB::get_debug_function_name ( const AztecAddress address,
const FunctionSelector selector 
) const
overridevirtual

Implements bb::avm2::simulation::ContractDBInterface.

Definition at line 79 of file hinting_dbs.cpp.

◆ revert_checkpoint()

void bb::avm2::simulation::HintingContractsDB::revert_checkpoint ( )
overridevirtual

Implements bb::avm2::simulation::ContractDBInterface.

Definition at line 134 of file hinting_dbs.cpp.

Member Data Documentation

◆ checkpoint_action_counter

uint32_t bb::avm2::simulation::HintingContractsDB::checkpoint_action_counter = 0
private

Definition at line 44 of file hinting_dbs.hpp.

◆ checkpoint_stack

std::stack<uint32_t> bb::avm2::simulation::HintingContractsDB::checkpoint_stack { { 0 } }
private

Definition at line 47 of file hinting_dbs.hpp.

◆ contract_hints

MappedContractHints bb::avm2::simulation::HintingContractsDB::contract_hints
mutableprivate

Definition at line 50 of file hinting_dbs.hpp.

◆ db

ContractDBInterface& bb::avm2::simulation::HintingContractsDB::db
private

Definition at line 43 of file hinting_dbs.hpp.

◆ next_checkpoint_id

uint32_t bb::avm2::simulation::HintingContractsDB::next_checkpoint_id = 1
private

Definition at line 46 of file hinting_dbs.hpp.


The documentation for this class was generated from the following files: