module Int_Intervals: sig
.. end
type
tt = {
|
h : int ; |
|
v : Abstract_value.Unhashconsed_Int_Intervals.t ; |
|
tag : int ; |
}
type
widen_hint = Abstract_value.Unhashconsed_Int_Intervals.widen_hint
exception Error_Bottom = Abstract_value.Unhashconsed_Int_Intervals.Error_Bottom
exception Error_Top = Abstract_value.Unhashconsed_Int_Intervals.Error_Top
val tag : tt -> int
val pretty_debug : Format.formatter -> tt -> unit
val pretty : Format.formatter -> tt -> unit
val hash_internal : tt -> int
val equal_internal : tt -> tt -> bool
val name : string
module IntIntervalsHashtbl: Buckx.MakeBig
(
sig
end
)
val table : IntIntervalsHashtbl.t
val current_tag : int Pervasives.ref
val wrap : Abstract_value.Unhashconsed_Int_Intervals.t ->
IntIntervalsHashtbl.data
val top : IntIntervalsHashtbl.data
val bottom : IntIntervalsHashtbl.data
val compare : tt -> tt -> int
include struct ... end
val fold_enum : split_non_enumerable:'a -> 'b -> tt -> 'c -> 'd
val diff_if_one : 'a -> 'b
val diff : tt ->
tt ->
IntIntervalsHashtbl.data
val cardinal_less_than : tt -> int -> int
val splitting_cardinal_less_than : split_non_enumerable:int -> tt -> int -> int
val meet : tt ->
tt ->
IntIntervalsHashtbl.data
val link : tt ->
tt ->
IntIntervalsHashtbl.data
val join : tt ->
tt ->
IntIntervalsHashtbl.data
val narrow : tt ->
tt ->
IntIntervalsHashtbl.data
val widen : Abstract_value.Unhashconsed_Int_Intervals.widen_hint ->
tt ->
tt ->
IntIntervalsHashtbl.data
val cardinal_zero_or_one : tt -> bool
val intersects : tt -> tt -> bool
val is_included : tt -> tt -> bool
val is_included_exn : tt -> tt -> unit
val inject : Abstract_value.Unhashconsed_Int_Intervals.elt list ->
IntIntervalsHashtbl.data
val pretty_typ : Cil_types.typ option ->
Format.formatter -> tt -> unit
val from_ival_size : Ival.tt ->
Int_Base.tt -> IntIntervalsHashtbl.data
val fold : (Abstract_value.Unhashconsed_Int_Intervals.elt -> 'a -> 'a) ->
tt -> 'a -> 'a
val is_top : t -> bool
exception Not_a_set
val project_set : tt ->
Abstract_value.Unhashconsed_Int_Intervals.elt list
val inject_zero_max : Int_Base.tt -> IntIntervalsHashtbl.data
val inject_bounds : Abstract_interp.Int.t ->
Abstract_interp.Int.t ->
IntIntervalsHashtbl.data