Functor Versioned_rpc.Caller_converts.Pipe_rpc.Make

module Make: 
functor (Model : sig
val name : string
type query 
type response 
type error 
end) -> sig .. end
Given a model of the types involved in a family of Pipe_RPCs, this functor provides a single Pipe_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 -->-.    E1 -->-.
         /                      \           \
        Q --->-- Q2 --> R2 -->-- R  E2 -->-- E
         \                      /           /
          `-->-- Q3 --> R3 -->-'    E3 -->-'
     

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

module Register: 
functor (Version_i : sig
val version : int
type query 
type response 
type error 
val query_of_model : Model.query -> query
val model_of_response : response ->
Model.response
val model_of_error : error -> Model.error
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
val bin_error : error
Bin_prot.Type_class.t
val bin_read_error : error
Bin_prot.Read_ml.reader
val bin_read_error_ : error
Bin_prot.Unsafe_read_c.reader
val bin_read_error__ : (int -> error)
Bin_prot.Unsafe_read_c.reader
val bin_reader_error : error
Bin_prot.Type_class.reader
val bin_size_error : error
Bin_prot.Size.sizer
val bin_write_error : error
Bin_prot.Write_ml.writer
val bin_write_error_ : error
Bin_prot.Unsafe_write_c.writer
val bin_writer_error : error
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.Pipe_rpc.S