package async_rpc_kernel

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

Module One_way.MakeSource

Given a model of the types involved in a family of RPCs, this functor provides a single RPC versioned dispatch function dispatch_multi in terms of that model and a mechanism for registering the individual versions that dispatch_multi knows about. Registration requires knowing how to get out of the model.

   ,-->-- M1
  /
 M --->-- M2
  \
   `-->-- M3

Parameters

module Model : sig ... end

Signature

Sourcemodule Register (Version_i : sig ... end) : sig ... end

add a new version to the set of versions available via dispatch_multi.

include S with type msg := Model.msg

multi-version dispatch

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

All rpcs supported by dispatch_multi

Sourceval versions : unit -> Core.Int.Set.t

All versions supported by dispatch_multi. (useful for computing which old versions may be pruned)

Sourceval name : string