type 'msg t
val create : name:string -> version:int -> bin_msg:'msg Bin_prot.Type_class.t -> 'msg tval name : _ t -> stringval version : _ t -> intval description : _ t -> Async_rpc_kernel__Rpc.Description.tval bin_msg : 'msg t -> 'msg Bin_prot.Type_class.tval implement : 'msg t -> ('connection_state -> 'msg -> unit) -> 'connection_state Async_rpc_kernel__Rpc.Implementation.tval dispatch' : 'msg t -> Async_rpc_kernel__Rpc.Connection.t -> 'msg -> unit Async_rpc_kernel.Rpc_result.tdispatch' exposes Rpc_result.t as output. Passing it through rpc_result_to_or_error gives you the same result as dispatch
val rpc_result_to_or_error : 'msg t -> Async_rpc_kernel__Rpc.Connection.t -> unit Async_rpc_kernel.Rpc_result.t -> unit Core_kernel.Or_error.tval dispatch : 'msg t -> Async_rpc_kernel__Rpc.Connection.t -> 'msg -> unit Core_kernel.Or_error.tval dispatch_exn : 'msg t -> Async_rpc_kernel__Rpc.Connection.t -> 'msg -> unit