Struct crux_core::Request

source ·
pub struct Request<Op>where
    Op: Operation,{
    pub operation: Op,
    /* private fields */
}
Expand description

Request represents an effect request from the core to the shell.

The operation is the input needed to process the effect, and will be one of the capabilities’ Operation types.

The request can be resolved by passing it to Core::resolve along with the corresponding result of type Operation::Output.

Fields§

§operation: Op

Implementations§

source§

impl<Op> Request<Op>where Op: Operation,

source

pub fn serialize<F, Eff>(self, effect: F) -> (Eff, ResolveBytes)where F: Fn(Op) -> Eff,

Serialize this effect request using effect as a constructor for a serializable Effect Eff

Trait Implementations§

source§

impl<Op> Debug for Request<Op>where Op: Operation + Debug,

source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<Op> !RefUnwindSafe for Request<Op>

§

impl<Op> Send for Request<Op>

§

impl<Op> !Sync for Request<Op>

§

impl<Op> Unpin for Request<Op>where Op: Unpin,

§

impl<Op> !UnwindSafe for Request<Op>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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 Twhere 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 Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.