Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
note_hash_tree_check.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <span>
4
7
8namespace bb::avm2::simulation {
9
11 public:
12 virtual ~NoteHashTreeCheckInterface() = default;
13
14 virtual bool note_hash_exists(const FF& unique_note_hash,
15 const FF& leaf_value,
16 uint64_t leaf_index,
17 std::span<const FF> sibling_path,
18 const AppendOnlyTreeSnapshot& snapshot) = 0;
19 virtual FF get_first_nullifier() const = 0;
20 virtual AppendOnlyTreeSnapshot append_note_hash(const FF& note_hash,
22 uint64_t note_hash_counter,
23 std::span<const FF> sibling_path,
24 const AppendOnlyTreeSnapshot& prev_snapshot) = 0;
25 virtual AppendOnlyTreeSnapshot append_siloed_note_hash(const FF& siloed_note_hash,
26 uint64_t note_hash_counter,
27 std::span<const FF> sibling_path,
28 const AppendOnlyTreeSnapshot& prev_snapshot) = 0;
29 virtual AppendOnlyTreeSnapshot append_unique_note_hash(const FF& unique_note_hash,
30 uint64_t note_hash_counter,
31 std::span<const FF> sibling_path,
32 const AppendOnlyTreeSnapshot& prev_snapshot) = 0;
33};
34
35} // namespace bb::avm2::simulation
virtual bool note_hash_exists(const FF &unique_note_hash, const FF &leaf_value, uint64_t leaf_index, std::span< const FF > sibling_path, const AppendOnlyTreeSnapshot &snapshot)=0
virtual AppendOnlyTreeSnapshot append_unique_note_hash(const FF &unique_note_hash, uint64_t note_hash_counter, std::span< const FF > sibling_path, const AppendOnlyTreeSnapshot &prev_snapshot)=0
virtual AppendOnlyTreeSnapshot append_note_hash(const FF &note_hash, AztecAddress contract_address, uint64_t note_hash_counter, std::span< const FF > sibling_path, const AppendOnlyTreeSnapshot &prev_snapshot)=0
virtual AppendOnlyTreeSnapshot append_siloed_note_hash(const FF &siloed_note_hash, uint64_t note_hash_counter, std::span< const FF > sibling_path, const AppendOnlyTreeSnapshot &prev_snapshot)=0
AvmFlavorSettings::FF FF
Definition field.hpp:10
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13