Up

Module Set_lang

Signature

module Raw : sig .. end
type ('base, 'elt, 'cmp) t = ('base, ('elt, 'cmp) Core.Std.Set.t) Raw.t
val compare : ('base -> 'base -> int) -> ('elt -> 'elt -> int) -> ('cmp -> 'cmp -> int) -> ('base, 'elt, 'cmp) t -> ('base, 'elt, 'cmp) t -> int
val base : 'base -> ('base, _, _) t
val set : ('elt, 'cmp) Core.Std.Set.t -> (_, 'elt, 'cmp) t
val inter2 : ('b, 'e, 'c) t -> ('b, 'e, 'c) t -> ('b, 'e, 'c) t
val union2 : ('b, 'e, 'c) t -> ('b, 'e, 'c) t -> ('b, 'e, 'c) t
val diff : ('b, 'e, 'c) t -> ('b, 'e, 'c) t -> ('b, 'e, 'c) t
val union : ('b, 'e, 'c) t * ('b, 'e, 'c) t list -> ('b, 'e, 'c) t
val inter : ('b, 'e, 'c) t * ('b, 'e, 'c) t list -> ('b, 'e, 'c) t
val union_list : ('b, 'e, 'c) t list -> ('b, 'e, 'c) t Core.Std.Or_error.t
val inter_list : ('b, 'e, 'c) t list -> ('b, 'e, 'c) t Core.Std.Or_error.t
val union_list_exn : ('b, 'e, 'c) t list -> ('b, 'e, 'c) t
val inter_list_exn : ('b, 'e, 'c) t list -> ('b, 'e, 'c) t
val values : ('base, _, _) t -> 'base list
val constant_value : (_, 'elt, 'cmp) t -> ('elt, 'cmp) Core.Std.Set.t option
val subst : ('b1, 'e, 'c) t -> f:('b1 -> ('b2, 'e, 'c) t) -> ('b2, 'e, 'c) t
val map : ('b1, 'e, 'c) t -> f:('b1 -> 'b2) -> ('b2, 'e, 'c) t
val specialize : ('b, 'e, 'c) t -> f:('b -> ('e, 'c) Core.Std.Set.t option) -> ('b, 'e, 'c) t
val eval : ('b, 'e, 'c) t -> f:('b -> ('e, 'c) Core.Std.Set.t) -> ('e, 'c) Core.Std.Set.t
val invariant : ('base, 'elt, 'cmp) t -> unit
module Make_monadic_eval (M : Core.Std.Monad.S) : sig .. end
module type S = Set_lang_intf.S with module Raw := Raw
module type S_binable = Set_lang_intf.S_binable with module Raw := Raw
module Make (Elt : Core.Std.Comparable.S) : S with module Set = Elt.Set