Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
execution_components.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <memory>
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/lib/serialization.hpp
"
9
10
// FIXME(fcarreiro): Events should not be in the interfaces.
11
#include "
barretenberg/vm2/simulation/events/addressing_event.hpp
"
12
#include "
barretenberg/vm2/simulation/events/gas_event.hpp
"
13
14
namespace
bb::avm2::simulation
{
15
16
// Forward declarations
17
class
ContextInterface;
18
class
AddressingInterface;
19
class
GasTrackerInterface;
20
21
class
ExecutionComponentsProviderInterface
{
22
public
:
23
virtual
~ExecutionComponentsProviderInterface
() =
default
;
24
virtual
std::unique_ptr<AddressingInterface>
make_addressing
(
AddressingEvent
&
event
) = 0;
25
virtual
std::unique_ptr<GasTrackerInterface>
make_gas_tracker
(
GasEvent
&
gas_event
,
26
const
Instruction
&
instruction
,
27
ContextInterface
&
context
) = 0;
28
};
29
30
}
// namespace bb::avm2::simulation
addressing_event.hpp
aztec_types.hpp
bb::avm2::context
Definition
context.hpp:37
bb::avm2::simulation::ContextInterface
Definition
context.hpp:19
bb::avm2::simulation::ExecutionComponentsProviderInterface
Definition
execution_components.hpp:21
bb::avm2::simulation::ExecutionComponentsProviderInterface::make_gas_tracker
virtual std::unique_ptr< GasTrackerInterface > make_gas_tracker(GasEvent &gas_event, const Instruction &instruction, ContextInterface &context)=0
bb::avm2::simulation::ExecutionComponentsProviderInterface::make_addressing
virtual std::unique_ptr< AddressingInterface > make_addressing(AddressingEvent &event)=0
bb::avm2::simulation::ExecutionComponentsProviderInterface::~ExecutionComponentsProviderInterface
virtual ~ExecutionComponentsProviderInterface()=default
gas_event.hpp
gas_event
GasEvent gas_event
Definition
gas_tracker.test.cpp:34
instruction
Instruction instruction
Definition
gas_tracker.test.cpp:33
memory_types.hpp
bb::avm2::simulation
Definition
address_derivation_event.hpp:6
std::get
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition
tuple.hpp:13
event
simulation::PublicDataTreeReadWriteEvent event
Definition
public_data_tree_trace.cpp:24
serialization.hpp
bb::avm2::simulation::AddressingEvent
Definition
addressing_event.hpp:52
bb::avm2::simulation::GasEvent
Definition
gas_event.hpp:22
bb::avm2::simulation::Instruction
Definition
serialization.hpp:30
field.hpp
src
barretenberg
vm2
simulation
interfaces
execution_components.hpp
Generated by
1.9.8