Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
update_check.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include "
barretenberg/vm2/simulation/events/update_check.hpp
"
4
#include "
barretenberg/vm2/simulation/lib/db_interfaces.hpp
"
5
#include "
barretenberg/vm2/simulation/poseidon2.hpp
"
6
#include "
barretenberg/vm2/simulation/range_check.hpp
"
7
8
namespace
bb::avm2::simulation
{
9
10
class
UpdateCheckInterface
{
11
public
:
12
virtual
~UpdateCheckInterface
() =
default
;
13
virtual
void
check_current_class_id
(
const
AztecAddress
& address,
const
ContractInstance
& instance) = 0;
14
};
15
16
class
UpdateCheck
:
public
UpdateCheckInterface
{
17
public
:
18
UpdateCheck
(
Poseidon2Interface
&
poseidon2
,
19
RangeCheckInterface
&
range_check
,
20
HighLevelMerkleDBInterface
&
merkle_db
,
21
EventEmitterInterface<UpdateCheckEvent>
& read_event_emitter,
22
const
GlobalVariables
&
globals
)
23
:
update_check_events
(read_event_emitter)
24
,
poseidon2
(
poseidon2
)
25
,
range_check
(
range_check
)
26
,
merkle_db
(
merkle_db
)
27
,
globals
(
globals
)
28
{}
29
30
void
check_current_class_id
(
const
AztecAddress
& address,
const
ContractInstance
& instance)
override
;
31
32
private
:
33
EventEmitterInterface<UpdateCheckEvent>
&
update_check_events
;
34
Poseidon2Interface
&
poseidon2
;
35
RangeCheckInterface
&
range_check
;
36
HighLevelMerkleDBInterface
&
merkle_db
;
37
const
GlobalVariables
&
globals
;
38
};
39
40
}
// namespace bb::avm2::simulation
bb::avm2::range_check
Definition
range_check.hpp:34
bb::avm2::simulation::EventEmitterInterface
Definition
event_emitter.hpp:10
bb::avm2::simulation::HighLevelMerkleDBInterface
Definition
db_interfaces.hpp:74
bb::avm2::simulation::Poseidon2Interface
Definition
poseidon2.hpp:14
bb::avm2::simulation::RangeCheckInterface
Definition
range_check.hpp:11
bb::avm2::simulation::UpdateCheck
Definition
update_check.hpp:16
bb::avm2::simulation::UpdateCheck::poseidon2
Poseidon2Interface & poseidon2
Definition
update_check.hpp:34
bb::avm2::simulation::UpdateCheck::globals
const GlobalVariables & globals
Definition
update_check.hpp:37
bb::avm2::simulation::UpdateCheck::update_check_events
EventEmitterInterface< UpdateCheckEvent > & update_check_events
Definition
update_check.hpp:33
bb::avm2::simulation::UpdateCheck::merkle_db
HighLevelMerkleDBInterface & merkle_db
Definition
update_check.hpp:36
bb::avm2::simulation::UpdateCheck::UpdateCheck
UpdateCheck(Poseidon2Interface &poseidon2, RangeCheckInterface &range_check, HighLevelMerkleDBInterface &merkle_db, EventEmitterInterface< UpdateCheckEvent > &read_event_emitter, const GlobalVariables &globals)
Definition
update_check.hpp:18
bb::avm2::simulation::UpdateCheck::check_current_class_id
void check_current_class_id(const AztecAddress &address, const ContractInstance &instance) override
Definition
update_check.cpp:23
bb::avm2::simulation::UpdateCheck::range_check
RangeCheckInterface & range_check
Definition
update_check.hpp:35
bb::avm2::simulation::UpdateCheckInterface
Definition
update_check.hpp:10
bb::avm2::simulation::UpdateCheckInterface::~UpdateCheckInterface
virtual ~UpdateCheckInterface()=default
bb::avm2::simulation::UpdateCheckInterface::check_current_class_id
virtual void check_current_class_id(const AztecAddress &address, const ContractInstance &instance)=0
bb::crypto::Poseidon2< crypto::Poseidon2Bn254ScalarFieldParams >
db_interfaces.hpp
bb::avm2::simulation
Definition
address_derivation.cpp:8
bb::avm2::AztecAddress
FF AztecAddress
Definition
aztec_types.hpp:11
update_check.hpp
range_check.hpp
bb::avm2::ContractInstance
Definition
aztec_types.hpp:82
bb::avm2::GlobalVariables
Definition
aztec_types.hpp:254
poseidon2.hpp
src
barretenberg
vm2
simulation
update_check.hpp
Generated by
1.9.8