Module Async_rpc_kernel

module Rpc : sig ... end

A library for building asynchronous RPC-style protocols.

module Versioned_rpc : sig ... end

Infrastructure code for managing RPCs that evolve over time to use different types at different versions.

module Menu : sig ... end
module Persistent_connection : sig ... end
module Pipe_transport : sig ... end
module Rpc_error : sig ... end
module Rpc_result : sig ... end
module Rpc_shapes : sig ... end

A serializable representation of the bin_shape(s) of an RPC. For a regular RPC, this is a simple query/response pair.

module Tracing_event : sig ... end

A bit of information about requests and responses. One can subscribe to these events for a Connection.t to implement some kinds of metrics or tracing.

module Or_not_authorized : sig ... end
module Close_reason : sig ... end
module Rpc_metadata : module type of Rpc_metadata with module Private := Rpc_metadata.Private

Metadata is arbitrary information provided by a caller along with the query. It is opaque to the Async RPC protocol, and may not be present on all queries. Metadata should generally be small, middleware-provided data that does not affect the callee's behavior (e.g. tracing ids). It may be subject to truncation if values provided are too large. See Connection.create for more info.

module Async_rpc_kernel_stable : sig ... end
module Async_rpc_kernel_private : sig ... end