Module Thread.Pipe

module Writer : sig ... end
module Reader : sig ... end
val create : unit -> 'a Reader.t * 'a Writer.t
val set_size_budget : 'a Writer.t -> int -> unit
val flush : 'a Writer.t -> unit Deferred.t
val interleave_pipe : 'a Reader.t Reader.t -> 'a Reader.t
val write : 'a Writer.t -> 'a -> unit Deferred.t
val write_without_pushback : 'a Writer.t -> 'a -> unit
val transfer_in : from:'a Stdlib.Queue.t -> 'a Writer.t -> unit Deferred.t
val close : 'a Writer.t -> unit Deferred.t
val read : 'a Reader.t -> [ `Eof | `Ok of 'a ] Deferred.t
val iter : 'a Reader.t -> f:('a -> unit Deferred.t) -> unit Deferred.t
val iter_without_pushback : 'a Reader.t -> f:('a -> unit) -> unit Deferred.t
val close_without_pushback : 'a Writer.t -> unit