[][src]Enum tarpc_lib::ClientMessage

#[non_exhaustive]
pub enum ClientMessage<T> {
    Request(Request<T>),
    Cancel {
        trace_context: Context,
        request_id: u64,
    },
}

A message from a client to a server.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Request(Request<T>)

A request initiated by a user. The server responds to a request by invoking a service-provided request handler. The handler completes with a response, which the server sends back to the client.

Cancel

A command to cancel an in-flight request, automatically sent by the client when a response future is dropped.

When received, the server will immediately cancel the main task (top-level future) of the request handler for the associated request. Any tasks spawned by the request handler will not be canceled, because the framework layer does not know about them.

Fields of Cancel

trace_context: Context

The trace context associates the message with a specific chain of causally-related actions, possibly orchestrated across many distributed systems.

request_id: u64

The ID of the request to cancel.

Trait Implementations

impl<T: Debug> Debug for ClientMessage<T>[src]

Auto Trait Implementations

impl<T> Send for ClientMessage<T> where
    T: Send

impl<T> Unpin for ClientMessage<T> where
    T: Unpin

impl<T> Sync for ClientMessage<T> where
    T: Sync

impl<T> UnwindSafe for ClientMessage<T> where
    T: UnwindSafe

impl<T> RefUnwindSafe for ClientMessage<T> where
    T: RefUnwindSafe

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,