Pipe_lib.Strict_pipe
type (_, _, _) overflow_behavior =
| Crash : ( 'a, crash, unit ) overflow_behavior |
| Drop_head : ( 'a -> unit ) -> ( 'a, drop_head, unit ) overflow_behavior |
| Call : ( 'a -> 'r ) -> ( 'a, call, 'r option ) overflow_behavior |
type (_, _, _) type_ =
| Synchronous : ( 'a, synchronous, unit Async_kernel.Deferred.t ) type_ |
| Buffered : [ `Capacity of int ]
* [ `Overflow of ( 'a, 'b, 'r ) overflow_behavior ] -> ( 'a,
'b buffered,
'r )
type_ |
A ('a, 'behavior, 'write_result) type_
is a representation of strict pipe types. * 'a
is the type of data written over the pipe, 'behavior
is a type parameter for classifying * which overflow behavior the pipe exhibits, and 'write_result
determines the return type of * writing to the pipe.
module Reader : sig ... end
module Writer : sig ... end