async_rpc_kernel

Platform-independent core of Async RPC library
IN THIS PACKAGE

Parameters

module Model : sig ... end

Signature

module Register (Version : sig ... end) : sig ... end
include S with type caller_msg := Model.Caller.msg with type callee_msg := Model.Callee.msg

multi-version dispatch

val implement_multi : ?log_not_previously_seen_version:( name:string -> int -> unit ) -> ( 'state -> version:int -> Model.Callee.msg -> unit ) -> 'state Rpc.Implementation.t list

implement multiple versions at once

val rpcs : unit -> Rpc.Any.t list

All supported rpcs.

val versions : unit -> Core_kernel.Int.Set.t

All supported versions. Useful for detecting old versions that may be pruned.

val name : string