async_rpc_kernel

Platform-independent core of Async RPC library
IN THIS PACKAGE
type 'connection_state t
val null : unit -> 'connection_state t

a server that can handle no queries

val lift : 'a t -> f:( 'b -> 'a ) -> 'b t
val create : implementations:'connection_state Implementation.t list -> on_unknown_rpc: [ `Raise | `Continue | `Close_connection | `Call of 'connection_state -> rpc_tag:string -> version:int -> [ `Close_connection | `Continue ] ] -> ( 'connection_state t, [ `Duplicate_implementations of Description.t list ] ) Core_kernel.Result.t

create ~implementations ~on_unknown_rpc creates a server capable of responding to the rpcs implemented in the implementation list. Be careful about setting on_unknown_rpc to `Raise because other programs may mistakenly connect to this one causing it to crash.

val create_exn : implementations:'connection_state Implementation.t list -> on_unknown_rpc: [ `Raise | `Continue | `Close_connection | `Call of 'connection_state -> rpc_tag:string -> version:int -> [ `Close_connection | `Continue ] ] -> 'connection_state t
val add : 'connection_state t -> 'connection_state Implementation.t -> 'connection_state t Core_kernel.Or_error.t
val add_exn : 'connection_state t -> 'connection_state Implementation.t -> 'connection_state t
val descriptions : _ t -> Description.t list
module Expert : sig ... end

Low-level, untyped access to queries. Regular users should ignore this.