module Make:
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: |
|
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.responseval model_of_error :error -> Model.error
val bin_query :query
Bin_prot.Type_class.tval bin_read_query :query
Bin_prot.Read_ml.readerval bin_read_query_ :query
Bin_prot.Unsafe_read_c.readerval bin_read_query__ :(int -> query)
Bin_prot.Unsafe_read_c.readerval bin_reader_query :query
Bin_prot.Type_class.readerval bin_size_query :query
Bin_prot.Size.sizerval bin_write_query :query
Bin_prot.Write_ml.writerval bin_write_query_ :query
Bin_prot.Unsafe_write_c.writerval bin_writer_query :query
Bin_prot.Type_class.writerval bin_response :response
Bin_prot.Type_class.tval bin_read_response :response
Bin_prot.Read_ml.readerval bin_read_response_ :response
Bin_prot.Unsafe_read_c.readerval bin_read_response__ :(int -> response)
Bin_prot.Unsafe_read_c.readerval bin_reader_response :response
Bin_prot.Type_class.readerval bin_size_response :response
Bin_prot.Size.sizerval bin_write_response :response
Bin_prot.Write_ml.writerval bin_write_response_ :response
Bin_prot.Unsafe_write_c.writerval bin_writer_response :response
Bin_prot.Type_class.writerval bin_error :error
Bin_prot.Type_class.tval bin_read_error :error
Bin_prot.Read_ml.readerval bin_read_error_ :error
Bin_prot.Unsafe_read_c.readerval bin_read_error__ :(int -> error)
Bin_prot.Unsafe_read_c.readerval bin_reader_error :error
Bin_prot.Type_class.readerval bin_size_error :error
Bin_prot.Size.sizerval bin_write_error :error
Bin_prot.Write_ml.writerval bin_write_error_ :error
Bin_prot.Unsafe_write_c.writerval bin_writer_error :error
Bin_prot.Type_class.writerend
) ->
sig
..end
dispatch_multi
.
include Versioned_rpc.Caller_converts.Pipe_rpc.S