sig
type key
type 'a t
module Setkey :
sig
type elt = key
type t
val repr : t -> elt Sette.set
val obj : elt Sette.set -> t
module Ord : sig type t = elt val compare : t -> t -> int end
val empty : t
val is_empty : t -> bool
val mem : elt -> t -> bool
val add : elt -> t -> t
val singleton : elt -> t
val remove : elt -> t -> t
val union : t -> t -> t
val inter : t -> t -> t
val diff : t -> t -> t
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 for_all : (elt -> bool) -> t -> bool
val exists : (elt -> bool) -> t -> bool
val filter : (elt -> bool) -> t -> t
val partition : (elt -> bool) -> t -> t * t
val cardinal : t -> int
val elements : t -> elt list
val min_elt : t -> elt
val max_elt : t -> elt
val choose : t -> elt
val print :
?first:(unit, Format.formatter, unit) format ->
?sep:(unit, Format.formatter, unit) format ->
?last:(unit, Format.formatter, unit) format ->
(Format.formatter -> elt -> unit) -> Format.formatter -> t -> unit
end
val repr : 'a Mappe.S.t -> (Mappe.S.key, 'a) Mappe.map
val obj : (Mappe.S.key, 'a) Mappe.map -> 'a Mappe.S.t
val is_empty : 'a Mappe.S.t -> bool
val empty : 'a Mappe.S.t
val add : Mappe.S.key -> 'a -> 'a Mappe.S.t -> 'a Mappe.S.t
val find : Mappe.S.key -> 'a Mappe.S.t -> 'a
val remove : Mappe.S.key -> 'a Mappe.S.t -> 'a Mappe.S.t
val mem : Mappe.S.key -> 'a Mappe.S.t -> bool
val addmap : 'a Mappe.S.t -> 'a Mappe.S.t -> 'a Mappe.S.t
val merge :
('a -> 'a -> 'a) -> 'a Mappe.S.t -> 'a Mappe.S.t -> 'a Mappe.S.t
val mergei :
(Mappe.S.key -> 'a -> 'a -> 'a) ->
'a Mappe.S.t -> 'a Mappe.S.t -> 'a Mappe.S.t
val common :
('a -> 'b -> 'c) -> 'a Mappe.S.t -> 'b Mappe.S.t -> 'c Mappe.S.t
val commoni :
(Mappe.S.key -> 'a -> 'b -> 'c) ->
'a Mappe.S.t -> 'b Mappe.S.t -> 'c Mappe.S.t
val combine :
(Mappe.S.key -> 'a option -> 'b option -> 'c option) ->
'a Mappe.S.t -> 'b Mappe.S.t -> 'c Mappe.S.t
val interset : 'a Mappe.S.t -> Mappe.S.Setkey.t -> 'a Mappe.S.t
val diffset : 'a Mappe.S.t -> Mappe.S.Setkey.t -> 'a Mappe.S.t
val iter : (Mappe.S.key -> 'a -> unit) -> 'a Mappe.S.t -> unit
val map : ('a -> 'b) -> 'a Mappe.S.t -> 'b Mappe.S.t
val mapi : (Mappe.S.key -> 'a -> 'b) -> 'a Mappe.S.t -> 'b Mappe.S.t
val fold : (Mappe.S.key -> 'a -> 'b -> 'b) -> 'a Mappe.S.t -> 'b -> 'b
val maptoset : 'a Mappe.S.t -> Mappe.S.Setkey.t
val mapofset : (Mappe.S.key -> 'a) -> Mappe.S.Setkey.t -> 'a Mappe.S.t
val compare : ('a -> 'b -> int) -> 'a Mappe.S.t -> 'b Mappe.S.t -> int
val comparei :
(Mappe.S.key -> 'a -> 'b -> int) -> 'a Mappe.S.t -> 'b Mappe.S.t -> int
val equal : ('a -> 'b -> bool) -> 'a Mappe.S.t -> 'b Mappe.S.t -> bool
val equali :
(Mappe.S.key -> 'a -> 'b -> bool) -> 'a Mappe.S.t -> 'b Mappe.S.t -> bool
val subset : ('a -> 'b -> bool) -> 'a Mappe.S.t -> 'b Mappe.S.t -> bool
val subseti :
(Mappe.S.key -> 'a -> 'b -> bool) -> 'a Mappe.S.t -> 'b Mappe.S.t -> bool
val filter : (Mappe.S.key -> 'a -> bool) -> 'a Mappe.S.t -> 'a Mappe.S.t
val partition :
(Mappe.S.key -> 'a -> bool) ->
'a Mappe.S.t -> 'a Mappe.S.t * 'a Mappe.S.t
val cardinal : 'a Mappe.S.t -> int
val bindings : 'a Mappe.S.t -> (Mappe.S.key * 'a) list
val min_key : 'a Mappe.S.t -> Mappe.S.key
val max_key : 'a Mappe.S.t -> Mappe.S.key
val choose : 'a Mappe.S.t -> Mappe.S.key * 'a
val print :
?first:(unit, Format.formatter, unit) Pervasives.format ->
?sep:(unit, Format.formatter, unit) Pervasives.format ->
?last:(unit, Format.formatter, unit) Pervasives.format ->
?firstbind:(unit, Format.formatter, unit) Pervasives.format ->
?sepbind:(unit, Format.formatter, unit) Pervasives.format ->
?lastbind:(unit, Format.formatter, unit) Pervasives.format ->
(Format.formatter -> Mappe.S.key -> unit) ->
(Format.formatter -> 'a -> unit) ->
Format.formatter -> 'a Mappe.S.t -> unit
end