AnyResponse

Struct AnyResponse 

Source
pub struct AnyResponse {
    pub metadata: DataResponseMetadata,
    pub payload: Option<AnyPayload>,
}
Expand description

A DataResponse for type-erased values.

Convertible to and from DataResponse<AnyMarker>.

Fields§

§metadata: DataResponseMetadata

Metadata about the returned object.

§payload: Option<AnyPayload>

The object itself; None if it was not loaded.

Implementations§

Source§

impl AnyResponse

Source

pub fn downcast<M>(self) -> Result<DataResponse<M>, DataError>
where M: DataMarker, for<'a> YokeTraitHack<<M::Yokeable as Yokeable<'a>>::Output>: Clone, M::Yokeable: ZeroFrom<'static, M::Yokeable> + MaybeSendSync,

Transforms a type-erased AnyResponse into a concrete DataResponse<M>.

Source

pub fn downcast_cloned<M>(&self) -> Result<DataResponse<M>, DataError>
where M: DataMarker, M::Yokeable: ZeroFrom<'static, M::Yokeable> + MaybeSendSync, for<'a> YokeTraitHack<<M::Yokeable as Yokeable<'a>>::Output>: Clone,

Clones and then transforms a type-erased AnyResponse into a concrete DataResponse<M>.

Trait Implementations§

Source§

impl Debug for AnyResponse

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<AnyResponse> for DataResponse<AnyMarker>

Source§

fn from(other: AnyResponse) -> Self

Converts to this type from the input type.
Source§

impl TryFrom<DataResponse<AnyMarker>> for AnyResponse

Source§

type Error = DataError

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

fn try_from(other: DataResponse<AnyMarker>) -> Result<Self, Self::Error>

Performs the conversion.

Auto Trait Implementations§

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, 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<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 104 bytes