pub struct TreeNodeKey { /* private fields */ }Expand description
The unique key of each node.
Implementations§
Source§impl TreeNodeKey
impl TreeNodeKey
Sourcepub fn new(version: Version, nibble_path: NibblePath) -> Self
pub fn new(version: Version, nibble_path: NibblePath) -> Self
Creates a new NodeKey.
Sourcepub fn new_empty_path(version: Version) -> Self
pub fn new_empty_path(version: Version) -> Self
A shortcut to generate a node key consisting of a version and an empty nibble path.
Sourcepub fn nibble_path(&self) -> &NibblePath
pub fn nibble_path(&self) -> &NibblePath
Gets the nibble path.
Sourcepub fn gen_child_node_key(&self, version: Version, n: Nibble) -> Self
pub fn gen_child_node_key(&self, version: Version, n: Nibble) -> Self
Generates a child node key based on this node key.
Sourcepub fn gen_parent_node_key(&self) -> Self
pub fn gen_parent_node_key(&self) -> Self
Generates parent node key at the same version based on this node key.
Trait Implementations§
Source§impl<X: CustomValueKind> Categorize<X> for TreeNodeKey
impl<X: CustomValueKind> Categorize<X> for TreeNodeKey
fn value_kind() -> ValueKind<X>
Source§impl Clone for TreeNodeKey
impl Clone for TreeNodeKey
Source§fn clone(&self) -> TreeNodeKey
fn clone(&self) -> TreeNodeKey
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 TreeNodeKey
impl Debug for TreeNodeKey
Source§impl<D: Decoder<X>, X: CustomValueKind> Decode<X, D> for TreeNodeKey
impl<D: Decoder<X>, X: CustomValueKind> Decode<X, D> for TreeNodeKey
Source§fn decode_body_with_value_kind(
decoder: &mut D,
value_kind: ValueKind<X>,
) -> Result<Self, DecodeError>
fn decode_body_with_value_kind( decoder: &mut D, value_kind: ValueKind<X>, ) -> Result<Self, DecodeError>
Decodes the type from the decoder, which should match a preloaded value kind. Read more
Source§impl<C: CustomTypeKind<RustTypeId>> Describe<C> for TreeNodeKey
impl<C: CustomTypeKind<RustTypeId>> Describe<C> for TreeNodeKey
Source§const TYPE_ID: RustTypeId
const TYPE_ID: RustTypeId
The
TYPE_ID should give a unique identifier for its SBOR schema type.
An SBOR schema type capture details about the SBOR payload, how it should be interpreted, validated and displayed. Read moreSource§fn type_data() -> TypeData<C, RustTypeId>
fn type_data() -> TypeData<C, RustTypeId>
Returns the local schema for the given type. Read more
Source§fn add_all_dependencies(aggregator: &mut TypeAggregator<C>)
fn add_all_dependencies(aggregator: &mut TypeAggregator<C>)
For each type referenced in
get_local_type_data, we need to ensure that the type and all of its own references
get added to the aggregator. Read moreSource§impl Display for TreeNodeKey
impl Display for TreeNodeKey
Source§impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for TreeNodeKey
impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for TreeNodeKey
Source§fn encode_value_kind(&self, encoder: &mut E) -> Result<(), EncodeError>
fn encode_value_kind(&self, encoder: &mut E) -> Result<(), EncodeError>
Encodes the SBOR value’s kind to the encoder
Source§fn encode_body(&self, encoder: &mut E) -> Result<(), EncodeError>
fn encode_body(&self, encoder: &mut E) -> Result<(), EncodeError>
Encodes the SBOR body of the type to the encoder. Read more
impl Eq for TreeNodeKey
Source§impl From<TreeNodeKey> for (Version, NibblePath)
impl From<TreeNodeKey> for (Version, NibblePath)
Source§fn from(value: TreeNodeKey) -> Self
fn from(value: TreeNodeKey) -> Self
Converts to this type from the input type.
Source§impl Hash for TreeNodeKey
impl Hash for TreeNodeKey
Source§impl Ord for TreeNodeKey
impl Ord for TreeNodeKey
Source§fn cmp(&self, other: &TreeNodeKey) -> Ordering
fn cmp(&self, other: &TreeNodeKey) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for TreeNodeKey
impl PartialEq for TreeNodeKey
Source§fn eq(&self, other: &TreeNodeKey) -> bool
fn eq(&self, other: &TreeNodeKey) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PartialOrd for TreeNodeKey
impl PartialOrd for TreeNodeKey
Source§impl<X: CustomValueKind> SborTuple<X> for TreeNodeKey
impl<X: CustomValueKind> SborTuple<X> for TreeNodeKey
fn get_length(&self) -> usize
impl StructuralPartialEq for TreeNodeKey
Auto Trait Implementations§
impl Freeze for TreeNodeKey
impl RefUnwindSafe for TreeNodeKey
impl Send for TreeNodeKey
impl Sync for TreeNodeKey
impl Unpin for TreeNodeKey
impl UnsafeUnpin for TreeNodeKey
impl UnwindSafe for TreeNodeKey
Blanket Implementations§
impl<T> BasicCategorize for T
impl<T> BasicDecode for T
impl<T> BasicDescribe for T
impl<T> BasicEncode for T
impl<T> BasicSbor for T
impl<T> BasicSborTuple for T
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<T, U> ContextualTryInto<U> for Twhere
U: ContextualTryFrom<T>,
impl<T, U> ContextualTryInto<U> for Twhere
U: ContextualTryFrom<T>,
type Error = <U as ContextualTryFrom<T>>::Error
type Context = <U as ContextualTryFrom<T>>::Context
fn contextual_try_into( self, context: &<U as ContextualTryFrom<T>>::Context, ) -> Result<U, <U as ContextualTryFrom<T>>::Error>
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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