light_indexed_array/changelog.rs
1/// NET_HEIGHT = HEIGHT - CANOPY_DEPTH
2#[derive(Clone, Debug, PartialEq, Eq)]
3pub struct IndexedChangelogEntry<I, const NET_HEIGHT: usize>
4where
5 I: Clone,
6{
7 /// Element that was a subject to the change.
8 pub element: RawIndexedElement<I>,
9 /// Merkle proof of that operation.
10 pub proof: [[u8; 32]; NET_HEIGHT],
11 /// Index of a changelog entry in `ConcurrentMerkleTree` corresponding to
12 /// the same operation.
13 pub changelog_index: usize,
14}
15
16#[derive(Debug, Default, Clone, Copy, Eq, PartialEq)]
17pub struct RawIndexedElement<I>
18where
19 I: Clone,
20{
21 pub value: [u8; 32],
22 pub next_index: I,
23 pub next_value: [u8; 32],
24 pub index: I,
25}