Module Astral_internal.LocationBounds0

include Datatype_sig.MONO_MAP with type key := Sort.t and type data := SortBound.t
type t
include Datatype_sig.PRINTABLE with type t := t
include Datatype_sig.SHOW with type t := t
val pp : Stdlib.Format.formatter -> t -> unit

Output to formatter

val print : ?prefix:string -> t -> unit

Output to stdout.

val show_option : t option -> string
val print_option : ?prefix:string -> t option -> unit
val dump : string -> t -> unit

Dump to file given by filename

Lists of printable values

val show_list : ?separator:string -> t list -> string
val pp_list : Stdlib.Format.formatter -> t list -> unit
val print_list : ?separator:string -> ?prefix:string -> t list -> unit

Copy-pasted signature of classic polymorphic map

val empty : t
val is_empty : t -> bool
val add : Sort.t -> SortBound.t -> t -> t
val mem : Sort.t -> t -> bool
val find : Sort.t -> t -> SortBound.t
val iter : (Sort.t -> SortBound.t -> unit) -> t -> unit
val fold : (Sort.t -> SortBound.t -> 'acc -> 'acc) -> t -> 'acc -> 'acc
val union : (Sort.t -> SortBound.t -> SortBound.t -> SortBound.t option) -> t -> t -> t
val bindings : t -> (Sort.t * SortBound.t) list
val cardinal : t -> int
val choose : t -> Sort.t * SortBound.t
val filter : (Sort.t -> SortBound.t -> bool) -> t -> t

Additional functions

val keys : t -> Sort.t list
val values : t -> SortBound.t list
val of_list : (Sort.t * SortBound.t) list -> t
val find_pred : (Sort.t -> bool) -> t -> Sort.t
val show : t -> string
val show_custom : (Sort.t -> string) -> (SortBound.t -> string) -> t -> string
val init_sort : Sort.t -> int -> int -> t
val plus_n : Sort.t -> int -> t -> t
val plus : t -> t -> t