Functor Versioned_rpc.Caller_converts.Rpc.Make

module Make: 
functor (Model : sig
val name : string
type query 
type response 
end) -> sig .. end
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 into and out of the model.
           ,-->-- Q1 --> R1 -->-.
          /                      \
         Q --->-- Q2 --> R2 -->-- R
          \                      /
           `-->-- Q3 --> R3 -->-'
     

Parameters:
Model : sig val name : string (* the name of the Rpc's being unified in the model *) type query type response end

module Register: 
functor (Version_i : sig
val version : int
type query 
type response 
val query_of_model : Model.query -> query
val model_of_response : response -> Model.response
val bin_query : query
Bin_prot.Type_class.t
val bin_read_query : query
Bin_prot.Read_ml.reader
val bin_read_query_ : query
Bin_prot.Unsafe_read_c.reader
val bin_read_query__ : (int -> query)
Bin_prot.Unsafe_read_c.reader
val bin_reader_query : query
Bin_prot.Type_class.reader
val bin_size_query : query
Bin_prot.Size.sizer
val bin_write_query : query
Bin_prot.Write_ml.writer
val bin_write_query_ : query
Bin_prot.Unsafe_write_c.writer
val bin_writer_query : query
Bin_prot.Type_class.writer
val bin_response : response
Bin_prot.Type_class.t
val bin_read_response : response
Bin_prot.Read_ml.reader
val bin_read_response_ : response
Bin_prot.Unsafe_read_c.reader
val bin_read_response__ : (int -> response)
Bin_prot.Unsafe_read_c.reader
val bin_reader_response : response
Bin_prot.Type_class.reader
val bin_size_response : response
Bin_prot.Size.sizer
val bin_write_response : response
Bin_prot.Write_ml.writer
val bin_write_response_ : response
Bin_prot.Unsafe_write_c.writer
val bin_writer_response : response
Bin_prot.Type_class.writer
end) -> sig .. end
add a new version to the set of versions available via dispatch_multi.
include Versioned_rpc.Caller_converts.Rpc.S