IR.Dependenciestype complete = {summary_loads : Procname.t list;recursion_edges : Procname.Set.t;other_proc_names : Procname.t list;used_tenv_sources : IBase.SourceFile.t list;}type t = | Partial| Complete of completeDependencies are partial and mutable while the summary to which they belong is being computed, then made complete and immutable once the summary is fully analyzed.
val pp : F.formatter -> t -> unitMutable state keeping track during on-demand interprocedural analysis of (1) which procedure is currently being analyzed and (2) which procedures type environments were used to compute summaries.
Located here in the IR module to avoid adding parameters threading the currently-under-analysis procedure throughout various analysis engine and checker code. These dependencies are then used in the Backend module to conservatively invalidate procedure summaries that were computed using out-of-date type environment information.
val currently_under_analysis : Procname.t option IStdlib.IStd.refval reset : Procname.t -> tval freeze : Procname.t -> t -> completeval record_pname_dep : ?caller:Procname.t -> kind -> Procname.t -> unitval record_srcfile_dep : IBase.SourceFile.t -> unit