Struct frame_support::traits::WrapperOpaque
source · pub struct WrapperOpaque<T>(pub T);
Expand description
A wrapper for any type T
which implement encode/decode in a way compatible with Vec<u8>
.
The encoding is the encoding of T
prepended with the compact encoding of its size in bytes.
Thus the encoded value can be decoded as a Vec<u8>
.
Tuple Fields§
§0: T
Trait Implementations§
source§impl<T: Clone> Clone for WrapperOpaque<T>
impl<T: Clone> Clone for WrapperOpaque<T>
source§fn clone(&self) -> WrapperOpaque<T>
fn clone(&self) -> WrapperOpaque<T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<T: Debug> Debug for WrapperOpaque<T>
impl<T: Debug> Debug for WrapperOpaque<T>
source§impl<T: Decode> Decode for WrapperOpaque<T>
impl<T: Decode> Decode for WrapperOpaque<T>
source§fn decode<I: Input>(input: &mut I) -> Result<Self, Error>
fn decode<I: Input>(input: &mut I) -> Result<Self, Error>
Attempt to deserialise the value from input.
source§fn skip<I: Input>(input: &mut I) -> Result<(), Error>
fn skip<I: Input>(input: &mut I) -> Result<(), Error>
Attempt to skip the encoded value from input. Read more
source§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>
) -> Result<DecodeFinished, Error>where
I: Input,
Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
source§impl<T: Default> Default for WrapperOpaque<T>
impl<T: Default> Default for WrapperOpaque<T>
source§fn default() -> WrapperOpaque<T>
fn default() -> WrapperOpaque<T>
Returns the “default value” for a type. Read more
source§impl<'de, T> Deserialize<'de> for WrapperOpaque<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for WrapperOpaque<T>where
T: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<T: Encode> Encode for WrapperOpaque<T>
impl<T: Encode> Encode for WrapperOpaque<T>
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 encode_to<O: Output + ?Sized>(&self, dest: &mut O)
fn encode_to<O: Output + ?Sized>(&self, dest: &mut O)
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 encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
source§impl<T> From<T> for WrapperOpaque<T>
impl<T> From<T> for WrapperOpaque<T>
source§impl<T: MaxEncodedLen> MaxEncodedLen for WrapperOpaque<T>
impl<T: MaxEncodedLen> MaxEncodedLen for WrapperOpaque<T>
source§fn max_encoded_len() -> usize
fn max_encoded_len() -> usize
Upper bound, in bytes, of the maximum encoded size of this item.
source§impl<T: PartialEq> PartialEq<WrapperOpaque<T>> for WrapperOpaque<T>
impl<T: PartialEq> PartialEq<WrapperOpaque<T>> for WrapperOpaque<T>
source§fn eq(&self, other: &WrapperOpaque<T>) -> bool
fn eq(&self, other: &WrapperOpaque<T>) -> bool
source§impl<T> Serialize for WrapperOpaque<T>where
T: Serialize,
impl<T> Serialize for WrapperOpaque<T>where
T: Serialize,
source§impl<T: TypeInfo + 'static> TypeInfo for WrapperOpaque<T>
impl<T: TypeInfo + 'static> TypeInfo for WrapperOpaque<T>
impl<T: Encode> EncodeLike<WrapperKeepOpaque<T>> for WrapperOpaque<T>
impl<T: Encode> EncodeLike<WrapperOpaque<T>> for WrapperKeepOpaque<T>
impl<T: Encode> EncodeLike<WrapperOpaque<T>> for WrapperOpaque<T>
impl<T: Eq> Eq for WrapperOpaque<T>
impl<T> StructuralEq for WrapperOpaque<T>
impl<T> StructuralPartialEq for WrapperOpaque<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for WrapperOpaque<T>where
T: RefUnwindSafe,
impl<T> Send for WrapperOpaque<T>where
T: Send,
impl<T> Sync for WrapperOpaque<T>where
T: Sync,
impl<T> Unpin for WrapperOpaque<T>where
T: Unpin,
impl<T> UnwindSafe for WrapperOpaque<T>where
T: UnwindSafe,
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,
source§impl<T1> DecodeUntypedSlice for T1where
T1: From<UntypedValue>,
impl<T1> DecodeUntypedSlice for T1where
T1: From<UntypedValue>,
source§fn decode_untyped_slice(results: &[UntypedValue]) -> Result<T1, UntypedError>
fn decode_untyped_slice(results: &[UntypedValue]) -> Result<T1, UntypedError>
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§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
. Read moresource§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
. Read moresource§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. Read moresource§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. Read moresource§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<T> FromFd for Twhere
T: From<OwnedFd>,
impl<T> FromFd for Twhere
T: From<OwnedFd>,
§impl<T> FromFilelike for Twhere
T: From<OwnedFd>,
impl<T> FromFilelike for Twhere
T: From<OwnedFd>,
§fn from_filelike(owned: OwnedFd) -> T
fn from_filelike(owned: OwnedFd) -> T
Constructs a new instance of
Self
from the given filelike object. Read more§fn from_into_filelike<Owned>(owned: Owned) -> Twhere
Owned: IntoFilelike,
fn from_into_filelike<Owned>(owned: Owned) -> Twhere
Owned: IntoFilelike,
Constructs a new instance of
Self
from the given filelike object
converted from into_owned
. Read more§impl<T> FromSocketlike for Twhere
T: From<OwnedFd>,
impl<T> FromSocketlike for Twhere
T: From<OwnedFd>,
§fn from_socketlike(owned: OwnedFd) -> T
fn from_socketlike(owned: OwnedFd) -> T
Constructs a new instance of
Self
from the given socketlike object.§fn from_into_socketlike<Owned>(owned: Owned) -> Twhere
Owned: IntoSocketlike,
fn from_into_socketlike<Owned>(owned: Owned) -> Twhere
Owned: IntoSocketlike,
Constructs a new instance of
Self
from the given socketlike object
converted from into_owned
. Read moresource§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>,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
source§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
.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.