package setr

  1. Overview
  2. Docs

Parameters

module C : Comparable

Signature

type t
type elt = C.t
module ESet : sig ... end
module EMap : sig ... end
val empty : t
val is_empty : t -> bool
type rem =
  1. | NoRepresentative
  2. | SameRepresentative
  3. | NewRepresentative of elt
val remove : elt -> t -> t * rem
val mem : elt -> t -> bool
val rep : elt -> t -> elt
val reps : t -> elt list
val elements : elt -> t -> ESet.t
val union : elt -> elt -> t -> t
val merge : t -> t -> t
val split : t -> t -> t
val diff : t -> t -> (elt * elt) list
val le : t -> t -> bool
val fold : (elt -> elt -> 'a -> 'a) -> t -> 'a -> 'a
val rename : elt SETr_Rename.t -> t -> t
val pairs : t -> (elt * elt) list