Struct sp_mmr_primitives::EncodableOpaqueLeaf
source · pub struct EncodableOpaqueLeaf(pub Vec<u8>);
Expand description
A type-safe wrapper for the concrete leaf type.
This structure serves merely to avoid passing raw Vec<u8>
around.
It must be Vec<u8>
-encoding compatible.
It is different from OpaqueLeaf
, because it does implement Codec
and the encoding has to match raw Vec<u8>
encoding.
Tuple Fields§
§0: Vec<u8>
Implementations§
source§impl EncodableOpaqueLeaf
impl EncodableOpaqueLeaf
sourcepub fn from_leaf<T: FullLeaf>(leaf: &T) -> Self
pub fn from_leaf<T: FullLeaf>(leaf: &T) -> Self
Convert a concrete leaf into encodable opaque version.
sourcepub fn from_opaque_leaf(opaque: OpaqueLeaf) -> Self
pub fn from_opaque_leaf(opaque: OpaqueLeaf) -> Self
Given an opaque leaf, make it encodable.
sourcepub fn into_opaque_leaf(self) -> OpaqueLeaf
pub fn into_opaque_leaf(self) -> OpaqueLeaf
Try to convert into a OpaqueLeaf.
Trait Implementations§
source§impl Debug for EncodableOpaqueLeaf
impl Debug for EncodableOpaqueLeaf
source§impl Decode for EncodableOpaqueLeaf
impl Decode for EncodableOpaqueLeaf
source§impl Encode for EncodableOpaqueLeaf
impl Encode for EncodableOpaqueLeaf
source§fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )
Convert self to a slice and append it to the destination.
source§fn using_encoded<R, F: FnOnce(&[u8]) -> R>(&self, f: F) -> R
fn using_encoded<R, F: FnOnce(&[u8]) -> R>(&self, f: F) -> R
Convert self to a slice and then invoke the given closure with it.
source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
If possible give a hint of expected size of the encoding. Read more
source§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
source§impl PartialEq<EncodableOpaqueLeaf> for EncodableOpaqueLeaf
impl PartialEq<EncodableOpaqueLeaf> for EncodableOpaqueLeaf
source§fn eq(&self, other: &EncodableOpaqueLeaf) -> bool
fn eq(&self, other: &EncodableOpaqueLeaf) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl TypeInfo for EncodableOpaqueLeaf
impl TypeInfo for EncodableOpaqueLeaf
impl EncodeLike<EncodableOpaqueLeaf> for EncodableOpaqueLeaf
impl Eq for EncodableOpaqueLeaf
impl StructuralEq for EncodableOpaqueLeaf
impl StructuralPartialEq for EncodableOpaqueLeaf
Auto Trait Implementations§
impl RefUnwindSafe for EncodableOpaqueLeaf
impl Send for EncodableOpaqueLeaf
impl Sync for EncodableOpaqueLeaf
impl Unpin for EncodableOpaqueLeaf
impl UnwindSafe for EncodableOpaqueLeaf
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere T: Decode,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
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, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read moresource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.