Struct reference_trie::ReferenceNodeCodecNoExt
source · [−]pub struct ReferenceNodeCodecNoExt<H>(_);
Expand description
Simple reference implementation of a NodeCodec
.
Even if implementation follows initial specification of
https://github.com/w3f/polkadot-re-spec/issues/8, this may
not follow it in the future, it is mainly the testing codec without extension node.
Trait Implementations
sourceimpl<H: Clone> Clone for ReferenceNodeCodecNoExt<H>
impl<H: Clone> Clone for ReferenceNodeCodecNoExt<H>
sourcefn clone(&self) -> ReferenceNodeCodecNoExt<H>
fn clone(&self) -> ReferenceNodeCodecNoExt<H>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<H: Default> Default for ReferenceNodeCodecNoExt<H>
impl<H: Default> Default for ReferenceNodeCodecNoExt<H>
sourcefn default() -> ReferenceNodeCodecNoExt<H>
fn default() -> ReferenceNodeCodecNoExt<H>
Returns the “default value” for a type. Read more
sourceimpl<H: Hasher> NodeCodec for ReferenceNodeCodecNoExt<H>
impl<H: Hasher> NodeCodec for ReferenceNodeCodecNoExt<H>
sourcefn hashed_null_node() -> <H as Hasher>::Out
fn hashed_null_node() -> <H as Hasher>::Out
Get the hashed null node.
sourcefn decode_plan(data: &[u8]) -> Result<NodePlan, Self::Error>
fn decode_plan(data: &[u8]) -> Result<NodePlan, Self::Error>
Decode bytes to a NodePlan
. Returns Self::E
on failure.
sourcefn is_empty_node(data: &[u8]) -> bool
fn is_empty_node(data: &[u8]) -> bool
Check if the provided bytes correspond to the codecs “empty” node.
sourcefn empty_node() -> &'static [u8]ⓘNotable traits for &[u8]impl Read for &[u8]impl Write for &mut [u8]
fn empty_node() -> &'static [u8]ⓘNotable traits for &[u8]impl Read for &[u8]impl Write for &mut [u8]
Returns an encoded empty node.
sourcefn leaf_node(
partial: impl Iterator<Item = u8>,
number_nibble: usize,
value: Value<'_>
) -> Vec<u8>
fn leaf_node(
partial: impl Iterator<Item = u8>,
number_nibble: usize,
value: Value<'_>
) -> Vec<u8>
Returns an encoded leaf node Read more
sourcefn extension_node(
_partial: impl Iterator<Item = u8>,
_nbnibble: usize,
_child: ChildReference<<H as Hasher>::Out>
) -> Vec<u8>
fn extension_node(
_partial: impl Iterator<Item = u8>,
_nbnibble: usize,
_child: ChildReference<<H as Hasher>::Out>
) -> Vec<u8>
Returns an encoded extension node Read more
sourcefn branch_node(
_children: impl Iterator<Item = impl Borrow<Option<ChildReference<<H as Hasher>::Out>>>>,
_maybe_value: Option<Value<'_>>
) -> Vec<u8>
fn branch_node(
_children: impl Iterator<Item = impl Borrow<Option<ChildReference<<H as Hasher>::Out>>>>,
_maybe_value: Option<Value<'_>>
) -> Vec<u8>
Returns an encoded branch node.
Takes an iterator yielding ChildReference<Self::HashOut>
and an optional value. Read more
sourcefn branch_node_nibbled(
partial: impl Iterator<Item = u8>,
number_nibble: usize,
children: impl Iterator<Item = impl Borrow<Option<ChildReference<Self::HashOut>>>>,
maybe_value: Option<Value<'_>>
) -> Vec<u8>
fn branch_node_nibbled(
partial: impl Iterator<Item = u8>,
number_nibble: usize,
children: impl Iterator<Item = impl Borrow<Option<ChildReference<Self::HashOut>>>>,
maybe_value: Option<Value<'_>>
) -> Vec<u8>
Returns an encoded branch node with a possible partial path.
number_nibble
is the partial path length as in extension_node
. Read more
sourceconst ESCAPE_HEADER: Option<u8> =
const ESCAPE_HEADER: Option<u8> =
Escape header byte sequence to indicate next node is a branch or leaf with hash of value, followed by the value node. Read more
Auto Trait Implementations
impl<H> RefUnwindSafe for ReferenceNodeCodecNoExt<H> where
H: RefUnwindSafe,
impl<H> Send for ReferenceNodeCodecNoExt<H> where
H: Send,
impl<H> Sync for ReferenceNodeCodecNoExt<H> where
H: Sync,
impl<H> Unpin for ReferenceNodeCodecNoExt<H> where
H: Unpin,
impl<H> UnwindSafe for ReferenceNodeCodecNoExt<H> where
H: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more