Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
hybrid_execution.hpp
Go to the documentation of this file.
1#pragma once
2
4
5namespace bb::avm2::simulation {
6
7// This class is used in fast simulation only.
8// It overrides the execution loop (to remove overhead) but it uses all the other
9// methods from the "gadget" Execution class. That is, dispatching and the opcodes'
10// implementations are shared.
11class HybridExecution : public Execution {
12 public:
14 ExecutionResult execute(std::unique_ptr<ContextInterface> enqueued_call_context) override;
15};
16
17} // namespace bb::avm2::simulation
Execution(AluInterface &alu, BitwiseInterface &bitwise, DataCopyInterface &data_copy, Poseidon2Interface &poseidon2, EccInterface &ecc, ToRadixInterface &to_radix, Sha256Interface &sha256, ExecutionComponentsProviderInterface &execution_components, ContextProviderInterface &context_provider, const InstructionInfoDBInterface &instruction_info_db, ExecutionIdManagerInterface &execution_id_manager, EventEmitterInterface< ExecutionEvent > &event_emitter, EventEmitterInterface< ContextStackEvent > &ctx_stack_emitter, KeccakF1600Interface &keccakf1600, GreaterThanInterface &greater_than, GetContractInstanceInterface &get_contract_instance_component, EmitUnencryptedLogInterface &emit_unencrypted_log_component, DebugLoggerInterface &debug_log_component, HighLevelMerkleDBInterface &merkle_db)
Definition execution.hpp:43
ExecutionResult execute(std::unique_ptr< ContextInterface > enqueued_call_context) override
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13