Skip to main content

TypeAbiUniversalInput

Struct TypeAbiUniversalInput 

Source
pub struct TypeAbiUniversalInput<T> { /* private fields */ }
Expand description

Type that ignores TypeAbiFrom restrictions.

Can be used to pass values to any argument, in any endpoint, regardless of type.

The any value type can be used, as long as it can be encoded. Typically it is used with BytesValue, when converting from Mandos scenarios.

Implementations§

Source§

impl<T> TypeAbiUniversalInput<T>

Source

pub fn new<U>(value: U) -> Self
where T: From<U>,

Trait Implementations§

Source§

impl<T> TopEncode for TypeAbiUniversalInput<T>
where T: TopEncode,

Source§

fn top_encode_or_handle_err<O, H>( &self, output: O, h: H, ) -> Result<(), H::HandledErr>

Version of top_encode that can handle errors as soon as they occur. For instance in can exit immediately and make sure that if it returns, it is a success. By not deferring error handling, this can lead to somewhat smaller bytecode.
Source§

fn top_encode<O>(&self, output: O) -> Result<(), EncodeError>
where O: TopEncodeOutput,

Attempt to serialize the value to output.

Auto Trait Implementations§

§

impl<T> Freeze for TypeAbiUniversalInput<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for TypeAbiUniversalInput<T>
where T: RefUnwindSafe,

§

impl<T> Send for TypeAbiUniversalInput<T>
where T: Send,

§

impl<T> Sync for TypeAbiUniversalInput<T>
where T: Sync,

§

impl<T> Unpin for TypeAbiUniversalInput<T>
where T: Unpin,

§

impl<T> UnsafeUnpin for TypeAbiUniversalInput<T>
where T: UnsafeUnpin,

§

impl<T> UnwindSafe for TypeAbiUniversalInput<T>
where T: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> SCCodec for T
where T: TopEncode,

Source§

fn fmt<F>(&self, f: &mut F)

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> TopEncodeMulti for T
where T: TopEncode,

Source§

fn multi_encode_or_handle_err<O, H>( &self, output: &mut O, h: H, ) -> Result<(), <H as EncodeErrorHandler>::HandledErr>

Version of top_encode that can handle errors as soon as they occur. For instance in can exit immediately and make sure that if it returns, it is a success. By not deferring error handling, this can lead to somewhat smaller bytecode.
Source§

fn multi_encode<O>(&self, output: &mut O) -> Result<(), EncodeError>

Attempt to serialize the value to output.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<O, T> ProxyArg<O> for T
where O: TypeAbiFrom<T>, T: TopEncodeMulti,

Source§

impl<T, U> TypeAbiFrom<TypeAbiUniversalInput<T>> for U