package async_rpc_kernel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
             (conv)  (conv)                      (conv)        (conv)
             caller  callee                      callee        caller
              |      |                           |             |
        caller|      |                           |             |     caller
        Q ---->- Q1 ->-.          (impl)       .->- (S1, U1s) ->---- (S, Us)
         \              \         callee      /                     /
          \--->- Q2 ->---\        |          /--->- (S2, U2s) ->---/
           \              \callee |  callee /                     /
            `->- Q3 ->---- Q ------> (S, Us) ---->- (S3, U3s) ->-´
type caller_query
type callee_query
type caller_state
type callee_state
type caller_update
type callee_update
type caller_error
type callee_error
val implement_multi : ?log_not_previously_seen_version:(name:string -> int -> unit) -> ('state -> version:int -> callee_query -> (callee_state * callee_update Async_kernel.Pipe.Reader.t, callee_error) Core_kernel.Result.t Async_kernel.Deferred.t) -> '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