Module Sarek_execute.Index_bitset

A set of array indices in [0, capacity), one bit each, grown on demand: the store sets of the epilogue coverage enumeration (Launch_epilogue), without hashing or polymorphic comparison per element.

val capacity : int

Largest index + 1 a set accepts (16 MiB of bits).

type t = {
  1. mutable bits : Stdlib.Bytes.t;
}
exception Out_of_range of int
val create : unit -> t
val grow : t -> int -> unit
val add : t -> int -> bool

Add i; true when it was already there. Raises Out_of_range outside [0, capacity).

val subset : t -> t -> bool

Every element of a is in b.