DataOption

Struct DataOption 

Source
pub struct DataOption<T>(pub Option<T>);
Expand description

A wrapper around Option for deserializing from optional data from a HTTP response.

The Option must be wrapped in order to implement FromHttpResponse, because the default implementation for Option where the data is DeserializeOwned would conflict with the direct implementation for types that are DeserializeOwned themselves.

Tuple Fields§

§0: Option<T>

Trait Implementations§

Source§

impl<T: Debug> Debug for DataOption<T>

Source§

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

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

impl<T> From<DataOption<T>> for Option<T>

Source§

fn from(value: DataOption<T>) -> Self

Converts to this type from the input type.
Source§

impl<T> From<Option<T>> for DataOption<T>

Source§

fn from(value: Option<T>) -> Self

Converts to this type from the input type.
Source§

impl<D: DeserializeOwned> FromHttpResponse for DataOption<D>

Source§

fn from_http_response(http_response: Response<Bytes>) -> Result<Self, Error>
where Self: Sized,

Convert from http::Response to our Response Read more

Auto Trait Implementations§

§

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

§

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

§

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

§

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

§

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

§

impl<T> UnwindSafe for DataOption<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, 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,