Utils.IndexSetSourceinclude SetSig.S1
with type 'a t = private IntSet.t
and type 'a element = 'a Fix.Indexing.indextype 'a element = 'a Fix.Indexing.indextype 'a t = private IntSet.tval empty : 'a tval is_empty : 'a t -> boolval is_not_empty : 'a t -> boolval is_singleton : 'a t -> boolval cardinal : 'a t -> intThese functions implements the Refine.DECOMPOSABLE interface. We cannot reference it here as Refine is implemented using bitsets, that would create a reference cycle.
Split a set into consecutive “runs” of elements that share the same class.
Parameters
cls : 'a element → 'b element that assigns a class to each element.xs : 'a t – the input set to be split.Returns A list of pairs. Each pair is made of a class (the result of cls for the run) and the subset of the original elements that belong to that run (preserving the original order).
module Set :
SetSig.StdSetS1 with type 'a t = private IntSetSet.t and type 'a elt = 'a tmodule Map :
SetSig.StdMapS1
with type ('n, 'a) t = private 'a IntSetMap.t
and type 'n key = 'n t