Enum sp_runtime_interface::wasm::WrappedFFIValue[][src]

pub enum WrappedFFIValue<T, O = ()> {
    Wrapped(T),
    WrappedAndOwned(T, O),
}

Represents a wrapped ffi value.

It is either the ffi value itself or the ffi value plus some other owned value. By providing support for storing another owned value besides the actual ffi value certain performance optimizations can be applied. For example using the pointer to a Vec<u8>, while using the pointer to a SCALE encoded Vec<u8> that is stored in this wrapper for any other Vec<T>.

Variants

Wrapped(T)
WrappedAndOwned(T, O)

Implementations

impl<T: Copy, O> WrappedFFIValue<T, O>[src]

pub fn get(&self) -> T[src]

Returns the wrapped ffi value.

Trait Implementations

impl<T, O> From<(T, O)> for WrappedFFIValue<T, O>[src]

impl<T, O> From<T> for WrappedFFIValue<T, O>[src]

Auto Trait Implementations

impl<T, O> RefUnwindSafe for WrappedFFIValue<T, O> where
    O: RefUnwindSafe,
    T: RefUnwindSafe

impl<T, O> Send for WrappedFFIValue<T, O> where
    O: Send,
    T: Send

impl<T, O> Sync for WrappedFFIValue<T, O> where
    O: Sync,
    T: Sync

impl<T, O> Unpin for WrappedFFIValue<T, O> where
    O: Unpin,
    T: Unpin

impl<T, O> UnwindSafe for WrappedFFIValue<T, O> where
    O: UnwindSafe,
    T: 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<!> for T[src]

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

impl<T> Instrument for T[src]

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

impl<T> MaybeRefUnwindSafe for T where
    T: RefUnwindSafe
[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.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]