Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
context_helper.hpp
Go to the documentation of this file.
1#pragma once
2
23
24namespace bb::avm2::fuzzing {
25
26using namespace bb::avm2::simulation;
27
43 public:
45 bool is_static = false,
46 uint32_t start_clk = 0);
47 // Commonly used emitters:
52
53 // Commonly used gadgets:
58 // Side effect tracker:
60 // Memory provider:
62 // Context provider:
64 // Context:
67 AztecAddress msg_sender = AztecAddress(0),
68 bool is_static = false,
69 FF transaction_fee = FF(0),
71 Gas gas_limit = GAS_LIMIT,
72 Gas gas_used = GAS_USED_BY_PRIVATE,
74
76 AztecAddress msg_sender,
77 ContextInterface& parent_context,
78 bool is_static = false,
79 Gas gas_limit = GAS_LIMIT);
80
81 private:
82 // Emitters:
97
98 // Gadgets:
104
105 // Misc:
109};
110
111} // namespace bb::avm2::fuzzing
const Gas GAS_LIMIT
Definition constants.hpp:40
const Gas GAS_USED_BY_PRIVATE
Definition constants.hpp:35
Sets up gadgets and instance managers to provide a context for fuzzing. NOTE: rudimentary set up for ...
EventEmitter< BytecodeRetrievalEvent > bytecode_retrieval_emitter
EventEmitter< Poseidon2PermutationEvent > perm_event_emitter
EventEmitter< InternalCallStackEvent > internal_call_stack_emitter
RetrievedBytecodesTreeCheck retrieved_bytecodes_tree_check
EventEmitter< RetrievedBytecodesTreeCheckEvent > retrieved_bytecodes_tree_check_emitter
DeduplicatingEventEmitter< GreaterThanEvent > greater_than_emitter
EventEmitter< Poseidon2PermutationMemoryEvent > perm_mem_event_emitter
EventEmitter< CalldataEvent > calldata_event_emitter
std::unique_ptr< simulation::ContextInterface > make_nested_fuzzing_context(AztecAddress address, AztecAddress msg_sender, ContextInterface &parent_context, bool is_static=false, Gas gas_limit=GAS_LIMIT)
std::unique_ptr< TxBytecodeManager > tx_bytecode_manager
EventEmitter< Poseidon2HashEvent > hash_event_emitter
EventEmitter< MerkleCheckEvent > merkle_check_emitter
EventEmitter< BytecodeDecompositionEvent > bytecode_decomposition_emitter
EventEmitter< ContractInstanceRetrievalEvent > contract_instance_retrieval_emitter
EventEmitter< BytecodeHashingEvent > bytecode_hashing_emitter
std::unique_ptr< simulation::ContextInterface > make_enqueued_fuzzing_context(AztecAddress address=AztecAddress(0), AztecAddress msg_sender=AztecAddress(0), bool is_static=false, FF transaction_fee=FF(0), std::span< const FF > calldata={}, Gas gas_limit=GAS_LIMIT, Gas gas_used=GAS_USED_BY_PRIVATE, TransactionPhase phase=TransactionPhase::APP_LOGIC)
DeduplicatingEventEmitter< RangeCheckEvent > range_check_emitter
DeduplicatingEventEmitter< FieldGreaterThanEvent > field_gt_emitter
WrittenPublicDataSlotsTreeCheck written_public_data_slots_tree_check
EventEmitter< UpdateCheckEvent > update_check_emitter
EventEmitter< WrittenPublicDataSlotsTreeCheckEvent > written_public_data_slots_tree_check_emitter
std::unique_ptr< simulation::ContextProvider > context_provider
DeduplicatingEventEmitter< InstructionFetchingEvent > instruction_fetching_emitter
AvmFlavorSettings::FF FF
Definition field.hpp:10
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13