Module Checkers.LithoDomain
val is_component_or_section_builder : IR.Typ.Name.t -> IR.Tenv.t -> bool
module LocalAccessPath : sig ... end
Access path + its parent procedure
val suffixes : IStdlib.IStd.String.Set.t
module MethodCallPrefix : sig ... end
Called procedure & location
module Mem : sig ... end
include Absint.AbstractDomain.S
include Absint.AbstractDomain.NoJoin
include IStdlib.PrettyPrintable.PrintableType
val pp : IStdlib.PrettyPrintable.F.formatter -> t -> unit
val subst : callsite:IBase.Location.t -> formals:(IR.Pvar.t * IR.Typ.t) list -> actuals:Absint.HilExp.t list -> ret_id_typ:Absint.AccessPath.base -> caller_pname:IR.Procname.t -> callee_pname:IR.Procname.t -> caller:t -> callee:Mem.t -> t
type summary
= Mem.t
type for saving in summary payload
val init : IR.Tenv.t -> IR.Procname.t -> (IR.Pvar.t * IR.Typ.t) list -> LocalAccessPath.t -> t
val assign : lhs:LocalAccessPath.t -> rhs:LocalAccessPath.t -> t -> t
val assume_null : LocalAccessPath.t -> t -> t
Semantics of null assume statement, i.e.,
assume(x==null)
val call_create : LocalAccessPath.t -> IR.Typ.name -> IBase.Location.t -> t -> t
Semantics of builder creation method
val call_builder : ret:LocalAccessPath.t -> receiver:LocalAccessPath.t -> MethodCallPrefix.t -> t -> t
Semantics of builder's methods, e.g.
prop
val call_build_method : ret:LocalAccessPath.t -> receiver:LocalAccessPath.t -> t -> t
Semantics of builder's final build method
val pp_summary : Stdlib.Format.formatter -> summary -> unit
val get_summary : is_void_func:bool -> t -> summary
val check_required_props : check_on_string_set:(IR.Typ.name -> IBase.Location.t -> MethodCallPrefix.t list -> IStdlib.IStd.String.Set.t -> unit) -> summary -> summary