Struct parity_scale_codec::Ref[][src]

pub struct Ref<'a, T: EncodeLike<U>, U: Encode>(_, _);

Reference wrapper that implement encode like any type that is encoded like its inner type.

Example

fn foo<T: EncodeLike<u8>>(t: T) -> T {
    store_t(Ref::from(&t)); // Store t without moving it, but only using a reference.
    t
}

fn store_t<T: EncodeLike<u8>>(t: T) {
}

Trait Implementations

impl<'a, T: EncodeLike<U>, U: Encode> Deref for Ref<'a, T, U>[src]

type Target = T

The resulting type after dereferencing.

impl<'a, T: EncodeLike<U>, U: Encode> EncodeLike<U> for Ref<'a, T, U>[src]

impl<'a, T: EncodeLike<U>, U: Encode> EncodeLike<U> for &Ref<'a, T, U>[src]

impl<'a, T: EncodeLike<U>, U: Encode> From<&'a T> for Ref<'a, T, U>[src]

impl<'a, T: EncodeLike<U>, U: Encode> WrapperTypeEncode for Ref<'a, T, U>[src]

Auto Trait Implementations

impl<'a, T, U> RefUnwindSafe for Ref<'a, T, U> where
    T: RefUnwindSafe,
    U: RefUnwindSafe

impl<'a, T, U> Send for Ref<'a, T, U> where
    T: Sync,
    U: Send

impl<'a, T, U> Sync for Ref<'a, T, U> where
    T: Sync,
    U: Sync

impl<'a, T, U> Unpin for Ref<'a, T, U> where
    U: Unpin

impl<'a, T, U> UnwindSafe for Ref<'a, T, U> where
    T: RefUnwindSafe,
    U: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.