package async_rpc_kernel

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module type State_rpc.SSource

      (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.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.Int.Set.t

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

val name : string