Module CharSetMap.Set

type elt = elt
type t
val empty : t
val is_empty : t -> bool
val singleton : elt -> t
val is_singleton : t -> bool
val add : elt -> t -> t
val add_with_logs : ('parameters, 'error, elt -> t -> 'error * t) SetMap.with_log_wrap
val remove : elt -> t -> t
val add_while_testing_freshness : ('parameters, 'error, elt -> t -> 'error * bool * t) SetMap.with_log_wrap
val remove_while_testing_existence : ('parameters, 'error, elt -> t -> 'error * bool * t) SetMap.with_log_wrap
val remove_with_logs : ('parameters, 'error, elt -> t -> 'error * t) SetMap.with_log_wrap
val split : elt -> t -> t * bool * t
val union : t -> t -> t
val disjoint_union : t -> t -> t option
val inter : t -> t -> t
val minus : t -> t -> t

minus a b contains elements of a that are not in b

val diff : t -> t -> t

diff a b = minus (union a b) (inter a b)

val minus_with_logs : ('parameters, 'error, t -> t -> 'error * t) SetMap.with_log_wrap
val union_with_logs : ('parameters, 'error, t -> t -> 'error * t) SetMap.with_log_wrap
val disjoint_union_with_logs : ('parameters, 'error, t -> t -> 'error * t) SetMap.with_log_wrap
val inter_with_logs : ('parameters, 'error, t -> t -> 'error * t) SetMap.with_log_wrap
val diff_with_logs : ('parameters, 'error, t -> t -> 'error * t) SetMap.with_log_wrap
val size : t -> int
val mem : elt -> t -> bool
val exists : (elt -> bool) -> t -> bool
val filter : (elt -> bool) -> t -> t
val filter_with_logs : ('parameters, 'error, (elt -> bool) -> t -> 'error * t) SetMap.with_log_wrap
val for_all : (elt -> bool) -> t -> bool
val partition : (elt -> bool) -> t -> t * t
val partition_with_logs : ('parameters, 'error, (elt -> bool) -> t -> 'error * t * t) SetMap.with_log_wrap
val compare : t -> t -> int
val equal : t -> t -> bool
val subset : t -> t -> bool
val iter : (elt -> unit) -> t -> unit
val fold : (elt -> 'a -> 'a) -> t -> 'a -> 'a
val fold_inv : (elt -> 'a -> 'a) -> t -> 'a -> 'a
val elements : t -> elt list
val print : Stdlib.Format.formatter -> t -> unit
val choose : t -> elt option
val random : Stdlib.Random.State.t -> t -> elt option
val min_elt : t -> elt option
val max_elt : t -> elt option