Module Async_rpc_kernel__.Rpc
module Description : sig ... endmodule Implementation : sig ... endA
'connection_state Implementation.tis something that knows how to respond to one query, given a'connection_state. That is, you can create a'connection_state Implementation.tby providing a function which takes a query *and* a'connection_stateand provides a response.
module Implementations : sig ... endA
'connection_state Implementations.tis something that knows how to respond to many different queries. It is conceptually a package of'connection_state Implementation.ts.
module Transport = Async_rpc_kernel__.Transportmodule Rpc : sig ... endmodule Pipe_close_reason : sig ... endmodule Pipe_rpc : sig ... endmodule State_rpc : sig ... endA state rpc is an easy way for two processes to synchronize a data structure by sending updates over the wire. It's basically a pipe rpc that sends/receives an initial state of the data structure, and then updates, and applies the updates under the covers.
module One_way : sig ... endAn RPC that has no response. Error handling is trickier here than it is for RPCs with responses, as there is no reasonable place to put an error if something goes wrong. Because of this, in the event of an error such as dispatching to an unimplemented RPC, the connection will be shut down. Similarly, if the implementation raises an exception, the connection will be shut down.
module Any : sig ... endmodule Stable : sig ... end