Module BO__AbsLoc.PowLoc
include Absint.AbstractDomain.S
include Absint.AbstractDomain.NoJoin
include IStdlib.PrettyPrintable.PrintableType
val pp : IStdlib.PrettyPrintable.F.formatter -> t -> unit
val compare : t -> t -> intval get_parent_field : t -> tval append_field : ?typ:IR.Typ.t -> t -> fn:IR.Fieldname.t -> tval append_star_field : t -> fn:IR.Fieldname.t -> tval bot : tval add : Loc.t -> t -> tval of_list : Loc.t list -> tval exists : (Loc.t -> bool) -> t -> boolval mem : Loc.t -> t -> boolval is_singleton_or_more : t -> Loc.t IStdlib.IContainer.singleton_or_moreval min_elt_opt : t -> Loc.t optionval singleton : Loc.t -> tval fold : (Loc.t -> 'a -> 'a) -> t -> 'a -> 'aval cast : IR.Typ.t -> t -> tval of_c_strlen : t -> tIt appends the
strlenfield.
val unknown : tval exists_str : f:(string -> bool) -> t -> boolIt checks if a variable or a field name in the location path satisfies
f.
val is_bot : t -> bool
type eval_locpath= BO.Symb.SymbolPath.partial -> tType for evaluating a path to an abstract location.
val subst : t -> eval_locpath -> tIt substitutes paths in the abstract location using
eval_locpath.
val subst_loc : Loc.t -> eval_locpath -> tIt substitutes paths in the abstract location using
eval_locpath.
val lift_cmp : BO.Boolean.EqualOrder.t -> t -> t -> BO.Boolean.tIt lifts a comparison of
Loc.ttot. The comparison can beBoolean.EqualOrder.eq,Boolean.EqualOrder.ne, etc.