Skip to main content

RpcPlan

Struct RpcPlan 

Source
pub struct RpcPlan {
    pub shape: &'static Shape,
    pub channel_locations: &'static [ChannelLocation],
}
Expand description

Precomputed plan for an RPC type (args, response, or error).

Contains the shape and locations of all channels within the type structure. Deserialization plans are cached transparently by facet via TypePlanCore::from_shape.

Fields§

§shape: &'static Shape

The shape this plan was built for. Used for type-safe construction.

§channel_locations: &'static [ChannelLocation]

Locations of all Rx/Tx channels in this type, in declaration order.

Implementations§

Source§

impl RpcPlan

Source

pub fn for_shape(shape: &'static Shape) -> &'static Self

Return a process-global cached plan for the given shape.

Source

pub fn for_type<T: Facet<'static>>() -> &'static Self

Return a process-global cached plan for a concrete type.

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> MaybeSend for T
where T: Send,

Source§

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