pub struct NoteFrontier {
pub position: u64,
pub frontier: [Option<[u8; 32]>; 32],
}Expand description
incremental merkle tree frontier stores the rightmost path for efficient appends depth 32 for orchard note commitment tree
Fields§
§position: u64position of next leaf to insert
frontier: [Option<[u8; 32]>; 32]frontier hashes at each level (32 levels for orchard) frontier[i] is Some if there’s an odd node at level i
Implementations§
Trait Implementations§
Source§impl Clone for NoteFrontier
impl Clone for NoteFrontier
Source§fn clone(&self) -> NoteFrontier
fn clone(&self) -> NoteFrontier
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for NoteFrontier
impl Debug for NoteFrontier
Source§impl<'de> Deserialize<'de> for NoteFrontier
impl<'de> Deserialize<'de> for NoteFrontier
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for NoteFrontier
impl RefUnwindSafe for NoteFrontier
impl Send for NoteFrontier
impl Sync for NoteFrontier
impl Unpin for NoteFrontier
impl UnwindSafe for NoteFrontier
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more