Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include <contract_instance_manager.hpp>
Public Member Functions | |
ContractInstanceManager (ContractDBInterface &contract_db, HighLevelMerkleDBInterface &merkle_db, UpdateCheckInterface &update_check, EventEmitterInterface< ContractInstanceRetrievalEvent > &event_emitter) | |
std::optional< ContractInstance > | get_contract_instance (const FF &contract_address) override |
Retrieves a contract instance from the contract database. | |
![]() | |
virtual | ~ContractInstanceManagerInterface ()=default |
Private Attributes | |
ContractDBInterface & | contract_db |
HighLevelMerkleDBInterface & | merkle_db |
UpdateCheckInterface & | update_check |
EventEmitterInterface< ContractInstanceRetrievalEvent > & | event_emitter |
Definition at line 41 of file contract_instance_manager.hpp.
bb::avm2::simulation::ContractInstanceManager::ContractInstanceManager | ( | ContractDBInterface & | contract_db, |
HighLevelMerkleDBInterface & | merkle_db, | ||
UpdateCheckInterface & | update_check, | ||
EventEmitterInterface< ContractInstanceRetrievalEvent > & | event_emitter | ||
) |
Definition at line 6 of file contract_instance_manager.cpp.
|
overridevirtual |
Retrieves a contract instance from the contract database.
If the instance is found, validate that with a nullifier check, perform address derivation, and update checking. If it is NOT found, validate its NON-membership with a nullifier check, and skip the rest.
contract_address | The address of the contract to retrieve. Also the nullifier to check. |
Implements bb::avm2::simulation::ContractInstanceManagerInterface.
Definition at line 27 of file contract_instance_manager.cpp.
|
private |
Definition at line 51 of file contract_instance_manager.hpp.
|
private |
Definition at line 54 of file contract_instance_manager.hpp.
|
private |
Definition at line 52 of file contract_instance_manager.hpp.
|
private |
Definition at line 53 of file contract_instance_manager.hpp.