Module StackHeapModel.Footprint

include Stdlib.Set.S with type elt := Location.t
type t
val empty : t
val add : Location.t -> t -> t
val singleton : Location.t -> t
val remove : Location.t -> t -> t
val union : t -> t -> t
val inter : t -> t -> t
val disjoint : t -> t -> bool
val diff : t -> t -> t
val cardinal : t -> int
val elements : t -> Location.t list
val min_elt : t -> Location.t
val min_elt_opt : t -> Location.t option
val max_elt : t -> Location.t
val max_elt_opt : t -> Location.t option
val choose : t -> Location.t
val choose_opt : t -> Location.t option
val find : Location.t -> t -> Location.t
val find_opt : Location.t -> t -> Location.t option
val find_first : (Location.t -> bool) -> t -> Location.t
val find_first_opt : (Location.t -> bool) -> t -> Location.t option
val find_last : (Location.t -> bool) -> t -> Location.t
val find_last_opt : (Location.t -> bool) -> t -> Location.t option
val iter : (Location.t -> unit) -> t -> unit
val fold : (Location.t -> 'acc -> 'acc) -> t -> 'acc -> 'acc
val map : (Location.t -> Location.t) -> t -> t
val filter : (Location.t -> bool) -> t -> t
val filter_map : (Location.t -> Location.t option) -> t -> t
val partition : (Location.t -> bool) -> t -> t * t
val split : Location.t -> t -> t * bool * t
val is_empty : t -> bool
val mem : Location.t -> t -> bool
val equal : t -> t -> bool
val compare : t -> t -> int
val subset : t -> t -> bool
val for_all : (Location.t -> bool) -> t -> bool
val exists : (Location.t -> bool) -> t -> bool
val to_list : t -> Location.t list
val of_list : Location.t list -> t
val to_seq_from : Location.t -> t -> Location.t Stdlib.Seq.t
val to_seq : t -> Location.t Stdlib.Seq.t
val to_rev_seq : t -> Location.t Stdlib.Seq.t
val add_seq : Location.t Stdlib.Seq.t -> t -> t
val of_seq : Location.t Stdlib.Seq.t -> t
val disjoint_list : t list -> bool