Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
get_contract_instance.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <cstdint>
4
5
#include "
barretenberg/vm2/common/aztec_types.hpp
"
6
#include "
barretenberg/vm2/common/field.hpp
"
7
#include "
barretenberg/vm2/common/memory_types.hpp
"
8
#include "
barretenberg/vm2/simulation/events/event_emitter.hpp
"
9
#include "
barretenberg/vm2/simulation/events/get_contract_instance_event.hpp
"
10
#include "
barretenberg/vm2/simulation/gadgets/contract_instance_manager.hpp
"
11
#include "
barretenberg/vm2/simulation/gadgets/memory.hpp
"
12
#include "
barretenberg/vm2/simulation/interfaces/get_contract_instance.hpp
"
13
#include "
barretenberg/vm2/simulation/lib/execution_id_manager.hpp
"
14
15
namespace
bb::avm2::simulation
{
16
17
class
GetContractInstance
:
public
GetContractInstanceInterface
{
18
public
:
19
GetContractInstance
(
ExecutionIdManagerInterface
&
execution_id_manager
,
20
HighLevelMerkleDBInterface
&
merkle_db
,
21
EventEmitterInterface<GetContractInstanceEvent>
&
event_emitter
,
22
ContractInstanceManagerInterface
&
instance_manager
);
23
24
void
get_contract_instance
(
MemoryInterface
&
memory
,
25
const
AztecAddress
&
contract_address
,
26
MemoryAddress
dst_offset,
27
uint8_t member_enum)
override
;
28
29
private
:
30
ExecutionIdManagerInterface
&
execution_id_manager
;
31
HighLevelMerkleDBInterface
&
merkle_db
;
32
EventEmitterInterface<GetContractInstanceEvent>
&
event_emitter
;
33
ContractInstanceManagerInterface
&
instance_manager
;
34
35
static
void
write_results
(
MemoryInterface
&
memory
,
MemoryAddress
dst_offset,
bool
exists
,
const
FF
& member_value);
36
static
FF
select_instance_member
(
const
ContractInstance
& instance, uint8_t member_enum);
37
};
38
39
}
// namespace bb::avm2::simulation
aztec_types.hpp
bb::avm2::get_contract_instance
Definition
get_contract_instance.hpp:33
bb::avm2::memory
Definition
memory.hpp:36
bb::avm2::simulation::ContractInstanceManagerInterface
Core shared component for contract instance retrieval and validation.
Definition
contract_instance_manager.hpp:17
bb::avm2::simulation::EventEmitterInterface
Definition
event_emitter.hpp:10
bb::avm2::simulation::ExecutionIdManagerInterface
Definition
execution_id_manager.hpp:13
bb::avm2::simulation::GetContractInstance
Definition
get_contract_instance.hpp:17
bb::avm2::simulation::GetContractInstance::select_instance_member
static FF select_instance_member(const ContractInstance &instance, uint8_t member_enum)
Definition
get_contract_instance.cpp:92
bb::avm2::simulation::GetContractInstance::instance_manager
ContractInstanceManagerInterface & instance_manager
Definition
get_contract_instance.hpp:33
bb::avm2::simulation::GetContractInstance::merkle_db
HighLevelMerkleDBInterface & merkle_db
Definition
get_contract_instance.hpp:31
bb::avm2::simulation::GetContractInstance::write_results
static void write_results(MemoryInterface &memory, MemoryAddress dst_offset, bool exists, const FF &member_value)
Definition
get_contract_instance.cpp:81
bb::avm2::simulation::GetContractInstance::execution_id_manager
ExecutionIdManagerInterface & execution_id_manager
Definition
get_contract_instance.hpp:30
bb::avm2::simulation::GetContractInstance::event_emitter
EventEmitterInterface< GetContractInstanceEvent > & event_emitter
Definition
get_contract_instance.hpp:32
bb::avm2::simulation::GetContractInstanceInterface
Definition
get_contract_instance.hpp:13
bb::avm2::simulation::HighLevelMerkleDBInterface
Definition
db.hpp:81
bb::avm2::simulation::MemoryInterface
Definition
memory.hpp:10
exists
bool exists
Definition
nullifier_tree_check.test.cpp:73
contract_address
AztecAddress contract_address
Definition
written_public_data_slots_tree_check.test.cpp:97
event_emitter.hpp
execution_id_manager.hpp
contract_instance_manager.hpp
get_contract_instance_event.hpp
memory_types.hpp
bb::avm2::simulation
Definition
address_derivation_event.hpp:6
bb::avm2::AztecAddress
FF AztecAddress
Definition
aztec_types.hpp:12
bb::avm2::MemoryAddress
uint32_t MemoryAddress
Definition
memory_types.hpp:11
bb::avm2::FF
AvmFlavorSettings::FF FF
Definition
field.hpp:10
memory.hpp
get_contract_instance.hpp
bb::avm2::ContractInstance
Definition
aztec_types.hpp:85
field.hpp
src
barretenberg
vm2
simulation
gadgets
get_contract_instance.hpp
Generated by
1.9.8