type 'a t val create : (unit -> 'a option) -> 'a t val of_queue : 'a Queue.t -> 'a t val iter : 'a t -> f:('a -> unit) -> unit val bag_map : 'a t -> njobs:int -> f:('a -> 'b) -> ('a * 'b) t (** Parallel map with arbitrarily-reordered elements. *) val map : 'a t -> f:('a -> 'b) -> 'b t val filter : 'a t -> f:('a -> bool) -> 'a t val concat : ('a t) list -> 'a t val group_by : 'a t -> f:('a -> 'b) -> ('b * int * 'a list) t