pub struct TrieInputSorted {
pub nodes: Arc<TrieUpdatesSorted>,
pub state: Arc<HashedPostStateSorted>,
pub prefix_sets: TriePrefixSetsMut,
}Expand description
Sorted variant of TrieInput for efficient proof generation.
This type holds sorted versions of trie data structures, which eliminates the need for expensive sorting operations during multiproof generation.
Fields§
§nodes: Arc<TrieUpdatesSorted>Sorted cached in-memory intermediate trie nodes.
state: Arc<HashedPostStateSorted>Sorted in-memory overlay hashed state.
prefix_sets: TriePrefixSetsMutPrefix sets for computation.
Implementations§
Source§impl TrieInputSorted
impl TrieInputSorted
Sourcepub const fn new(
nodes: Arc<TrieUpdatesSorted>,
state: Arc<HashedPostStateSorted>,
prefix_sets: TriePrefixSetsMut,
) -> Self
pub const fn new( nodes: Arc<TrieUpdatesSorted>, state: Arc<HashedPostStateSorted>, prefix_sets: TriePrefixSetsMut, ) -> Self
Create new sorted trie input.
Sourcepub fn from_state(state: HashedPostStateSorted) -> Self
pub fn from_state(state: HashedPostStateSorted) -> Self
Create new sorted trie input from sorted in-memory state. The prefix sets will be constructed and set automatically.
Sourcepub fn from_unsorted(input: TrieInput) -> Self
pub fn from_unsorted(input: TrieInput) -> Self
Create from unsorted TrieInput by sorting.
Trait Implementations§
Source§impl Clone for TrieInputSorted
impl Clone for TrieInputSorted
Source§impl Debug for TrieInputSorted
impl Debug for TrieInputSorted
Auto Trait Implementations§
impl Freeze for TrieInputSorted
impl RefUnwindSafe for TrieInputSorted
impl Send for TrieInputSorted
impl Sync for TrieInputSorted
impl Unpin for TrieInputSorted
impl UnsafeUnpin for TrieInputSorted
impl UnwindSafe for TrieInputSorted
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
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> ⓘ
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> ⓘ
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 moreimpl<T> MaybeDebug for Twhere
T: Debug,
§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 128 bytes