Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
pure_bytecode_manager.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <cstdint>
4#include <memory>
5#include <optional>
6#include <span>
7#include <sys/types.h>
8#include <utility>
9#include <vector>
10
17
18namespace bb::avm2::simulation {
19
20// Forward declaration.
21class ContractInstanceManagerInterface;
22class ContractDBInterface;
23
48
49} // namespace bb::avm2::simulation
Core shared component for contract instance retrieval and validation.
ContractInstanceManagerInterface & contract_instance_manager
std::shared_ptr< std::vector< uint8_t > > get_bytecode_data(const BytecodeId &bytecode_id) override
Instruction read_instruction(const BytecodeId &bytecode_id, uint32_t pc) override
PureTxBytecodeManager(ContractDBInterface &contract_db, ContractInstanceManagerInterface &contract_instance_manager)
BytecodeId get_bytecode(const AztecAddress &address) override
unordered_flat_map< BytecodeId, std::shared_ptr< std::vector< uint8_t > > > bytecodes
unordered_flat_set< ContractClassId > retrieved_class_ids
std::tuple< void *, uint32_t > InstructionIdentifier
unordered_flat_map< InstructionIdentifier, Instruction > instruction_cache
::ankerl::unordered_dense::set< Key > unordered_flat_set
Definition set.hpp:11
::ankerl::unordered_dense::map< Key, T > unordered_flat_map
Definition map.hpp:15
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13