Module Absint.PatternMatch
val get_this_type_nonstatic_methods_only : IR.ProcAttributes.t -> IR.Typ.t optionGet the `this` type of a procedure. Should not be called on non-static methods, otherwise it can return a wrong type
val get_type_name : IR.Typ.t -> stringGet the name of a type
val get_vararg_type_names : IR.Tenv.t -> IR.Procdesc.Node.t -> IR.Pvar.t -> string listGet the type names of a variable argument
val is_subtype : IR.Tenv.t -> IR.Typ.Name.t -> IR.Typ.Name.t -> boolIs the type a transitive subtype of the typename?
val is_subtype_of_str : IR.Tenv.t -> IR.Typ.Name.t -> string -> boolResolve
typ_strintenv, then checktyp<:typ_str
module Java : sig ... endval supertype_exists : IR.Tenv.t -> (IR.Typ.Name.t -> IR.Struct.t -> bool) -> IR.Typ.Name.t -> boolHolds iff the predicate holds on a supertype of the named type, including the type itself
val supertype_find_map_opt : IR.Tenv.t -> (IR.Typ.Name.t -> 'a option) -> IR.Typ.Name.t -> 'a optionReturn the first non-None result found when applying the given function to supertypes of the named type, including the type itself
val proc_calls : (IR.Procname.t -> IR.ProcAttributes.t option) -> IR.Procdesc.t -> (IR.Procname.t -> IR.ProcAttributes.t -> bool) -> (IR.Procname.t * IR.ProcAttributes.t) listReturn the callees that satisfy
filter.
val override_exists : ?check_current_type:bool -> (IR.Procname.t -> bool) -> IR.Tenv.t -> IR.Procname.t -> boolReturn true if applying the given predicate to an override of
procname(includingprocnameitself whencheck_current_typeis true, which it is by default) returns true.
val override_iter : (IR.Procname.t -> unit) -> IR.Tenv.t -> IR.Procname.t -> unitApply the given predicate to procname and each override of
procname. For the moment, this only works for Java
val lookup_attributes : IR.Tenv.t -> IR.Procname.t -> IR.ProcAttributes.t optionval type_name_get_annotation : IR.Tenv.t -> IR.Typ.name -> IR.Annot.Item.t optionval type_get_annotation : IR.Tenv.t -> IR.Typ.t -> IR.Annot.Item.t optionval type_get_class_name : IR.Typ.t -> IR.Typ.Name.t optionGet the class name of the type
val type_is_class : IR.Typ.t -> boolIs the type a class type
val get_fields_nullified : IR.Procdesc.t -> IR.Fieldname.Set.treturn the set of instance fields that are assigned to a null literal in
procdesc
val has_same_signature : IR.Procname.t -> (IR.Procname.t -> bool) IStdlib.IStd.Staged.tFor a given
procnamechecks if the method has the same method name, number, order and types of parameters.)
module ObjectiveC : sig ... end