Enum TrieNodeV2
pub enum TrieNodeV2 {
EmptyRoot,
Branch(BranchNodeV2),
Leaf(LeafNode),
Extension(ExtensionNode),
}Expand description
Enum representing an MPT trie node.
This is a V2 representiation, differing from TrieNode in that branch and extension nodes are
compressed into a single node.
Variants§
EmptyRoot
Variant representing empty root node.
Branch(BranchNodeV2)
Variant representing a BranchNodeV2.
Leaf(LeafNode)
Variant representing a LeafNode.
Extension(ExtensionNode)
Variant representing an ExtensionNode.
This will only be used for extension nodes for which child is not inlined. This variant will never be produced by proof workers that will always reveal a full path to a requested leaf.
Trait Implementations§
§impl Clone for TrieNodeV2
impl Clone for TrieNodeV2
§fn clone(&self) -> TrieNodeV2
fn clone(&self) -> TrieNodeV2
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for TrieNodeV2
impl Debug for TrieNodeV2
§impl Decodable for TrieNodeV2
impl Decodable for TrieNodeV2
§fn decode(buf: &mut &[u8]) -> Result<TrieNodeV2, Error>
fn decode(buf: &mut &[u8]) -> Result<TrieNodeV2, Error>
buf must be advanced past
the decoded object.§impl<'de> Deserialize<'de> for TrieNodeV2
impl<'de> Deserialize<'de> for TrieNodeV2
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<TrieNodeV2, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<TrieNodeV2, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl Encodable for TrieNodeV2
impl Encodable for TrieNodeV2
impl Eq for TrieNodeV2
§impl PartialEq for TrieNodeV2
impl PartialEq for TrieNodeV2
§impl Serialize for TrieNodeV2
impl Serialize for TrieNodeV2
§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for TrieNodeV2
Auto Trait Implementations§
impl Freeze for TrieNodeV2
impl RefUnwindSafe for TrieNodeV2
impl Send for TrieNodeV2
impl Sync for TrieNodeV2
impl Unpin for TrieNodeV2
impl UnsafeUnpin for TrieNodeV2
impl UnwindSafe for TrieNodeV2
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> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> 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> MaybeSerde for Twhere
T: Serialize + for<'de> Deserialize<'de>,
§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> ⓘ
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§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>,
Source§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: 104 bytes
Size for each variant:
EmptyRoot: 0 bytesBranch: 104 bytesLeaf: 72 bytesExtension: 88 bytes