|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
A high-level merkle db that tracks side effects. More...
#include <side_effect_tracking_db.hpp>
Public Member Functions | |
| SideEffectTrackingDB (const FF &first_nullifier, HighLevelMerkleDBInterface &merkle_db, SideEffectTrackerInterface &tracked_side_effects) | |
| FF | storage_read (const AztecAddress &contract_address, const FF &slot) const override |
| bool | was_storage_written (const AztecAddress &contract_address, const FF &slot) const override |
| bool | nullifier_exists (const AztecAddress &contract_address, const FF &nullifier) const override |
| bool | siloed_nullifier_exists (const FF &nullifier) const override |
| bool | note_hash_exists (uint64_t leaf_index, const FF &unique_note_hash) const override |
| bool | l1_to_l2_msg_exists (uint64_t leaf_index, const FF &msg_hash) const override |
| uint32_t | get_checkpoint_id () const override |
| TreeStates | get_tree_state () const override |
| LowLevelMerkleDBInterface & | as_unconstrained () const override |
| void | storage_write (const AztecAddress &contract_address, const FF &slot, const FF &value, bool is_protocol_write) override |
| void | nullifier_write (const AztecAddress &contract_address, const FF &nullifier) override |
| void | siloed_nullifier_write (const FF &nullifier) override |
| void | note_hash_write (const AztecAddress &contract_address, const FF ¬e_hash) override |
| void | siloed_note_hash_write (const FF ¬e_hash) override |
| void | unique_note_hash_write (const FF ¬e_hash) override |
| void | pad_trees () override |
| void | create_checkpoint () override |
| void | commit_checkpoint () override |
| void | revert_checkpoint () override |
Public Member Functions inherited from bb::avm2::simulation::HighLevelMerkleDBInterface | |
| virtual | ~HighLevelMerkleDBInterface ()=default |
Private Attributes | |
| FF | first_nullifier |
| HighLevelMerkleDBInterface & | merkle_db |
| SideEffectTrackerInterface & | tracked_side_effects |
A high-level merkle db that tracks side effects.
This class is a wrapper around a high-level merkle db that tracks side effects. It delegates all methods to the merkle db, and tracks side effects.
Definition at line 16 of file side_effect_tracking_db.hpp.
|
inline |
Definition at line 18 of file side_effect_tracking_db.hpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 47 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 104 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 98 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 37 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 42 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 32 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 27 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 74 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 17 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 62 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 116 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 110 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 83 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 22 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 68 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 7 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 52 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 91 of file side_effect_tracking_db.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::HighLevelMerkleDBInterface.
Definition at line 12 of file side_effect_tracking_db.cpp.
|
private |
Definition at line 55 of file side_effect_tracking_db.hpp.
|
private |
Definition at line 56 of file side_effect_tracking_db.hpp.
|
private |
Definition at line 57 of file side_effect_tracking_db.hpp.