package async_rpc_kernel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
                     (conv)   (conv)
                     caller   callee
                     |        |
                     |        |
        M.caller ---->-- M1 -->-.             (impl)
                \                \            callee
                 \--->-- M2 -->---\           |
                  \                \          |
                   `->-- M3 -->---- M.callee --> unit
type caller_msg
type callee_msg

multi-version dispatch

val implement_multi : ?log_not_previously_seen_version:(name:string -> int -> unit) -> ('state -> version:int -> 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