Module Parallel_mapSource

Sourcemodule type S = sig ... end

Parallel operations over maps.

Sourcemodule Tree : sig ... end

Parallel operations on _ Map.Tree.t.

Parallel operations on _ Map.t.

Sourceval fold : ('key : value mod contended portable) ('data : value mod contended portable) 'res. Parallel_kernel.t @ local -> ('key, 'data, 'cmp) Base.Map.t -> init:(Base.unit -> 'res) @ portable -> f: (Parallel_kernel.t @ local -> key:'key -> data:'data -> 'res -> 'res) @ shareable -> combine:(Parallel_kernel.t @ local -> 'res -> 'res -> 'res) @ shareable -> 'res

Parallel version of Map.fold.

Sourceval iter : ('key : value mod contended portable) ('data : value mod contended portable). Parallel_kernel.t @ local -> ('key, 'data, 'cmp) Base.Map.t -> f: (Parallel_kernel.t @ local -> key:'key -> data:'data -> Base.unit) @ shareable -> Base.unit

Parallel version of Map.iteri.

Sourceval map : ('key : value mod contended portable) ('data1 : value mod contended portable) ('data2 : value mod contended portable). Parallel_kernel.t @ local -> ('key, 'data1, 'cmp) Base.Map.t -> f: (Parallel_kernel.t @ local -> key:'key -> data:'data1 -> 'data2) @ shareable -> ('key, 'data2, 'cmp) Base.Map.t

Parallel version of Map.mapi.

Sourceval filter : ('key : value mod contended portable) ('data : value mod contended portable). Parallel_kernel.t @ local -> ('key, 'data, 'cmp) Base.Map.t -> f: (Parallel_kernel.t @ local -> key:'key -> data:'data -> Base.bool) @ shareable -> ('key, 'data, 'cmp) Base.Map.t

Parallel version of Map.filteri.

Sourceval filter_map : ('key : value mod contended portable) ('data1 : value mod contended portable) ('data2 : value mod contended portable). Parallel_kernel.t @ local -> ('key, 'data1, 'cmp) Base.Map.t -> f: (Parallel_kernel.t @ local -> key:'key -> data:'data1 -> 'data2 Base.option) @ shareable -> ('key, 'data2, 'cmp) Base.Map.t

Parallel version of Map.filter_mapi.

Sourceval partition_tf : ('key : value mod contended portable) ('data : value mod contended portable). Parallel_kernel.t @ local -> ('key, 'data, 'cmp) Base.Map.t -> f: (Parallel_kernel.t @ local -> key:'key -> data:'data -> Base.bool) @ shareable -> ('key, 'data, 'cmp) Base.Map.t * ('key, 'data, 'cmp) Base.Map.t

Parallel version of Map.partitioni_tf.

Sourceval partition_map : ('key : value mod contended portable) ('data1 : value mod contended portable) ('data2 : value mod contended portable) ('data3 : value mod contended portable). Parallel_kernel.t @ local -> ('key, 'data1, 'cmp) Base.Map.t -> f: (Parallel_kernel.t @ local -> key:'key -> data:'data1 -> ('data2, 'data3) Base.Either.t) @ shareable -> ('key, 'data2, 'cmp) Base.Map.t * ('key, 'data3, 'cmp) Base.Map.t

Parallel version of Map.partition_mapi.

Sourceval merge_filter_map : ('key : value mod contended portable) ('data1 : value mod contended portable) ('data2 : value mod contended portable) ('data3 : value mod contended portable) ('cmp : value mod portable). Parallel_kernel.t @ local -> ('key, 'data1, 'cmp) Base.Map.t -> ('key, 'data2, 'cmp) Base.Map.t -> f: (Parallel_kernel.t @ local -> key:'key -> ('data1, 'data2) Base.Map.Merge_element.t -> 'data3 Base.option) @ shareable -> ('key, 'data3, 'cmp) Base.Map.t

Parallel version of Map.merge.

Sourceval to_sequence : ('key : value mod contended portable) ('data : value mod contended portable). ('key, 'data, 'cmp) Base.Map.t -> ('key * 'data) Parallel_sequence.With_length.t @ local

Constructs a parallel sequence from a map.

Sourceval to_sequence2 : ('key : value mod contended portable) ('data1 : value mod contended portable) ('data2 : value mod contended portable) ('cmp : value mod portable). ('key, 'data1, 'cmp) Base.Map.t -> ('key, 'data2, 'cmp) Base.Map.t -> ('key * ('data1, 'data2) Base.Map.Merge_element.t) Parallel_sequence.t @ local

Constructs a parallel sequence from a pair of maps sharing a key type.

Sourceval traverse : ('key : value mod contended portable) ('data : value mod contended portable). Parallel_kernel.t @ local -> ('key, 'data, 'cmp) Base.Map.t -> on_empty:(Base.unit -> 'res) @ shareable -> on_data: (Parallel_kernel.t @ local -> key:'key -> data:'data -> 'v) @ shareable -> on_leaf:(Parallel_kernel.t @ local -> key:'key -> 'v -> 'res) @ shareable -> on_node: (Parallel_kernel.t @ local -> key:'key -> 'v -> 'res -> 'res -> 'res) @ shareable -> 'res

Parallel computation following the tree structure of a map.