Struct inspect::Deferred

source ·
pub struct Deferred { /* private fields */ }
Expand description

A deferred inspection, which can provide inspection results asynchronously from a call to inspect.

Implementations§

source§

impl Deferred

source

pub fn inspect(self, obj: impl InspectMut)

Inspect an object as part of a deferred inspection.

source

pub fn respond<F: FnOnce(&mut Response<'_>)>(self, f: F)

Responds to the deferred inspection, calling f with a Response.

source

pub fn value(self, value: Value)

Responds to the deferred request with a value.

source

pub fn update(self) -> Result<DeferredUpdate, Self>

Returns an object used for handling an update request.

If this is not an update request, returns Err(self).

source

pub fn ignore(self)

Removes this node from the inspection output.

source

pub fn external_request(&self) -> ExternalRequest<'_>

Gets the request information for sending to a remote node via a non-mesh communication mechanism, for use with complete_external.

You don’t need this if you are communicating with the remote object via mesh. In that case, just send this object to the remote object over a mesh channel, and then use respond or similar methods to handle the request.

Use this when the remote object is across some other communication boundary, such as gRPC. In that case, you will be responsible for using inspect on the remote node to handle the request, and to serializing and deserializing the Node structure across the communications boundary.

source

pub fn complete_external(self, node: Node, sensitivity: SensitivityLevel)

Complete the request with a Node and a SensitivityLevel.

See external_request for details on how to use this.

source

pub fn sensitivity(&self) -> SensitivityLevel

Gets the sensitivity level for this request.

Trait Implementations§

source§

impl Debug for Deferred

source§

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

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

impl DefaultEncoding for Deferred

source§

type Encoding = TableEncoder

The encoding to use for the serialization. Read more
source§

impl<'encoding> StructDecodeMetadata<'encoding, Resource> for Deferred

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

The list of decoder vtables.
source§

impl StructEncodeMetadata<Resource> for Deferred

source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

The list of encoder vtables.
source§

impl StructMetadata for Deferred

source§

const NUMBERS: &'static [u32] = _

The field numbers for each field.
source§

const OFFSETS: &'static [usize] = _

The byte offset to each field within the struct.
source§

impl Downcast<Deferred> for Deferred

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> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> MeshField for T
where T: DefaultEncoding + Any + Send + 'static, <T as DefaultEncoding>::Encoding: FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,

source§

impl<T> MeshPayload for T
where T: DefaultEncoding + Any + Send + 'static, <T as DefaultEncoding>::Encoding: MessageEncode<T, Resource> + for<'a> MessageDecode<'a, T, Resource> + FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,

source§

impl<T> SerializeMessage for T
where T: MeshPayload,

source§

type Concrete = T

The underlying concrete message type.
source§

fn compute_message_size(&mut self, sizer: MessageSizer<'_>)

Computes the message size, as in MessageEncode::compute_message_size.
source§

fn write_message(self, writer: MessageWriter<'_, '_, Resource>)

Writes the message, as in MessageEncode::write_message.
source§

fn extract(self) -> <T as SerializeMessage>::Concrete

Extract the concrete message.
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> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T, U> Upcast<U> for T
where U: Downcast<T>,