Up

Module F

Signature

type ('a, 'b) result_mode = ('a, 'b) Implementation_types.Implementation.F.result_mode =
| Blocking : ('a, 'a) result_mode
type ('connection_state, 'query, 'init, 'update) streaming_impl = ('connection_state, 'query, 'init, 'update) Implementation_types.Implementation.F.streaming_impl =
| Pipe of 'connection_state -> 'query -> aborted:unit Async_kernel.Std.Deferred.t -> ('init * 'update Async_kernel.Std.Pipe.Reader.t, 'init) Core_kernel.Std.Result.t Async_kernel.Std.Deferred.t
| Direct of 'connection_state -> 'query -> 'update Implementation_types.Direct_stream_writer.t -> ('init, 'init) Core_kernel.Std.Result.t Async_kernel.Std.Deferred.t
type 'connection_state t = 'connection_state Implementation_types.Implementation.F.t =
| One_way : 'msg Core_kernel.Std.Bin_prot.Type_class.reader * ('connection_state -> 'msg -> unit) -> 'connection_state t
| One_way_expert : ('connection_state -> Core_kernel.Std.Bigstring.t -> pos:int -> len:int -> unit) -> 'connection_state t
| Rpc : 'query Core_kernel.Std.Bin_prot.Type_class.reader * 'response Core_kernel.Std.Bin_prot.Type_class.writer * ('connection_state -> 'query -> 'result) * ('response, 'result) result_mode -> 'connection_state t
| Rpc_expert : ('connection_state -> Expert.Responder.t -> Core_kernel.Std.Bigstring.t -> pos:int -> len:int -> 'result) * (Expert.implementation_result, 'result) result_mode -> 'connection_state t
| Streaming_rpc : 'query Core_kernel.Std.Bin_prot.Type_class.reader * 'init Core_kernel.Std.Bin_prot.Type_class.writer * 'update Core_kernel.Std.Bin_prot.Type_class.writer * ('connection_state, 'query, 'init, 'update) streaming_impl -> 'connection_state t
val lift : 'a t -> f:('b -> 'a) -> 'b t