val names : string list
val max_ready : (t, int) Fieldslib.Field.t
val stop : (t, unit Async.Deferred.t) Fieldslib.Field.t
val init : (t, write_buffer) Fieldslib.Field.t
val capacity : (t, int) Fieldslib.Field.t
val fold : init:'acc__0 -> capacity:('acc__0 -> (t, int) Fieldslib.Field.t -> 'acc__1) -> init:('acc__1 -> (t, write_buffer) Fieldslib.Field.t -> 'acc__2) -> stop:('acc__2 -> (t, unit Async.Deferred.t) Fieldslib.Field.t -> 'acc__3) -> max_ready:('acc__3 -> (t, int) Fieldslib.Field.t -> 'acc__4) -> 'acc__4
val make_creator : capacity:((t, int) Fieldslib.Field.t -> 'acc__0 -> ('input__ -> int) * 'acc__1) -> init:((t, write_buffer) Fieldslib.Field.t -> 'acc__1 -> ('input__ -> write_buffer) * 'acc__2) -> stop:((t, unit Async.Deferred.t) Fieldslib.Field.t -> 'acc__2 -> ('input__ -> unit Async.Deferred.t) * 'acc__3) -> max_ready:((t, int) Fieldslib.Field.t -> 'acc__3 -> ('input__ -> int) * 'acc__4) -> 'acc__0 -> ('input__ -> t) * 'acc__4
val create : capacity:int -> init:write_buffer -> stop:unit Async.Deferred.t -> max_ready:int -> t
val map : capacity:((t, int) Fieldslib.Field.t -> int) -> init:((t, write_buffer) Fieldslib.Field.t -> write_buffer) -> stop:((t, unit Async.Deferred.t) Fieldslib.Field.t -> unit Async.Deferred.t) -> max_ready:((t, int) Fieldslib.Field.t -> int) -> t
val iter : capacity:((t, int) Fieldslib.Field.t -> unit) -> init:((t, write_buffer) Fieldslib.Field.t -> unit) -> stop:((t, unit Async.Deferred.t) Fieldslib.Field.t -> unit) -> max_ready:((t, int) Fieldslib.Field.t -> unit) -> unit
val for_all : capacity:((t, int) Fieldslib.Field.t -> bool) -> init:((t, write_buffer) Fieldslib.Field.t -> bool) -> stop:((t, unit Async.Deferred.t) Fieldslib.Field.t -> bool) -> max_ready:((t, int) Fieldslib.Field.t -> bool) -> bool
val exists : capacity:((t, int) Fieldslib.Field.t -> bool) -> init:((t, write_buffer) Fieldslib.Field.t -> bool) -> stop:((t, unit Async.Deferred.t) Fieldslib.Field.t -> bool) -> max_ready:((t, int) Fieldslib.Field.t -> bool) -> bool
val to_list : capacity:((t, int) Fieldslib.Field.t -> 'elem__) -> init:((t, write_buffer) Fieldslib.Field.t -> 'elem__) -> stop:((t, unit Async.Deferred.t) Fieldslib.Field.t -> 'elem__) -> max_ready:((t, int) Fieldslib.Field.t -> 'elem__) -> 'elem__ list
val map_poly : ([< `Read | `Set_and_create ], t, 'x0) Fieldslib.Field.user -> 'x0 list