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

#include <bytecode_manager.hpp>

Inheritance diagram for bb::avm2::simulation::TxBytecodeManager:
bb::avm2::simulation::TxBytecodeManagerInterface

Public Member Functions

 TxBytecodeManager (ContractDBInterface &contract_db, HighLevelMerkleDBInterface &merkle_db, BytecodeHashingInterface &bytecode_hasher, RangeCheckInterface &range_check, ContractInstanceManagerInterface &contract_instance_manager, EventEmitterInterface< BytecodeRetrievalEvent > &retrieval_events, EventEmitterInterface< BytecodeDecompositionEvent > &decomposition_events, EventEmitterInterface< InstructionFetchingEvent > &fetching_events)
 
BytecodeId get_bytecode (const AztecAddress &address) override
 
Instruction read_instruction (BytecodeId bytecode_id, uint32_t pc) override
 
- Public Member Functions inherited from bb::avm2::simulation::TxBytecodeManagerInterface
virtual ~TxBytecodeManagerInterface ()=default
 

Private Attributes

ContractDBInterfacecontract_db
 
HighLevelMerkleDBInterfacemerkle_db
 
BytecodeHashingInterfacebytecode_hasher
 
RangeCheckInterfacerange_check
 
ContractInstanceManagerInterfacecontract_instance_manager
 
EventEmitterInterface< BytecodeRetrievalEvent > & retrieval_events
 
EventEmitterInterface< BytecodeDecompositionEvent > & decomposition_events
 
EventEmitterInterface< InstructionFetchingEvent > & fetching_events
 
unordered_flat_map< BytecodeId, std::shared_ptr< std::vector< uint8_t > > > bytecodes
 

Detailed Description

Definition at line 52 of file bytecode_manager.hpp.

Constructor & Destructor Documentation

◆ TxBytecodeManager()

bb::avm2::simulation::TxBytecodeManager::TxBytecodeManager ( ContractDBInterface contract_db,
HighLevelMerkleDBInterface merkle_db,
BytecodeHashingInterface bytecode_hasher,
RangeCheckInterface range_check,
ContractInstanceManagerInterface contract_instance_manager,
EventEmitterInterface< BytecodeRetrievalEvent > &  retrieval_events,
EventEmitterInterface< BytecodeDecompositionEvent > &  decomposition_events,
EventEmitterInterface< InstructionFetchingEvent > &  fetching_events 
)
inline

Definition at line 54 of file bytecode_manager.hpp.

Member Function Documentation

◆ get_bytecode()

BytecodeId bb::avm2::simulation::TxBytecodeManager::get_bytecode ( const AztecAddress address)
overridevirtual

◆ read_instruction()

Instruction bb::avm2::simulation::TxBytecodeManager::read_instruction ( BytecodeId  bytecode_id,
uint32_t  pc 
)
overridevirtual

Member Data Documentation

◆ bytecode_hasher

BytecodeHashingInterface& bb::avm2::simulation::TxBytecodeManager::bytecode_hasher
private

Definition at line 78 of file bytecode_manager.hpp.

◆ bytecodes

unordered_flat_map<BytecodeId, std::shared_ptr<std::vector<uint8_t> > > bb::avm2::simulation::TxBytecodeManager::bytecodes
private

Definition at line 84 of file bytecode_manager.hpp.

◆ contract_db

ContractDBInterface& bb::avm2::simulation::TxBytecodeManager::contract_db
private

Definition at line 76 of file bytecode_manager.hpp.

◆ contract_instance_manager

ContractInstanceManagerInterface& bb::avm2::simulation::TxBytecodeManager::contract_instance_manager
private

Definition at line 80 of file bytecode_manager.hpp.

◆ decomposition_events

EventEmitterInterface<BytecodeDecompositionEvent>& bb::avm2::simulation::TxBytecodeManager::decomposition_events
private

Definition at line 82 of file bytecode_manager.hpp.

◆ fetching_events

EventEmitterInterface<InstructionFetchingEvent>& bb::avm2::simulation::TxBytecodeManager::fetching_events
private

Definition at line 83 of file bytecode_manager.hpp.

◆ merkle_db

HighLevelMerkleDBInterface& bb::avm2::simulation::TxBytecodeManager::merkle_db
private

Definition at line 77 of file bytecode_manager.hpp.

◆ range_check

RangeCheckInterface& bb::avm2::simulation::TxBytecodeManager::range_check
private

Definition at line 79 of file bytecode_manager.hpp.

◆ retrieval_events

EventEmitterInterface<BytecodeRetrievalEvent>& bb::avm2::simulation::TxBytecodeManager::retrieval_events
private

Definition at line 81 of file bytecode_manager.hpp.


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