39 uint64_t low_leaf_index,
51 merkle_check.assert_membership(low_leaf_hash, low_leaf_index, sibling_path, snapshot.
root);
58 .prev_snapshot = snapshot,
59 .next_snapshot = snapshot,
60 .low_leaf_preimage = low_leaf_preimage,
61 .low_leaf_hash = low_leaf_hash,
62 .low_leaf_index = low_leaf_index,
63 .siloing_data = siloing_data,
69 uint64_t nullifier_counter,
71 uint64_t low_leaf_index,
82 bool exists = !insertion_sibling_path.has_value();
93 merkle_check.assert_membership(low_leaf_hash, low_leaf_index, low_leaf_sibling_path, prev_snapshot.
root);
102 low_leaf_hash, updated_low_leaf_hash, low_leaf_index, low_leaf_sibling_path, prev_snapshot.
root);
113 insertion_sibling_path.value(),
122 .new_leaf_hash = new_leaf_hash,
123 .intermediate_root = intermediate_root,
128 .prev_snapshot = prev_snapshot,
129 .next_snapshot = next_snapshot,
130 .low_leaf_preimage = low_leaf_preimage,
131 .low_leaf_hash = low_leaf_hash,
132 .low_leaf_index = low_leaf_index,
134 .siloing_data = siloing_data,
135 .nullifier_counter = nullifier_counter,
136 .append_data = append_data });
138 return next_snapshot;
AppendOnlyTreeSnapshot write(const FF &nullifier, std::optional< AztecAddress > contract_address, uint64_t nullifier_counter, const NullifierTreeLeafPreimage &low_leaf_preimage, uint64_t low_leaf_index, std::span< const FF > low_leaf_sibling_path, const AppendOnlyTreeSnapshot &prev_snapshot, std::optional< std::span< const FF > > insertion_sibling_path) override
void assert_read(const FF &nullifier, std::optional< AztecAddress > contract_address, bool exists, const NullifierTreeLeafPreimage &low_leaf_preimage, uint64_t low_leaf_index, std::span< const FF > sibling_path, const AppendOnlyTreeSnapshot &snapshot) override