Create ReverseAnalysisCallGraph.ml

Summary:
The analysis call graph is the call graph from the perspective of the analyses run in infer

This commit creates the reverse analysis call graph to be used for incremental diff analysis

Reviewed By: ezgicicek

Differential Revision: D16335938

fbshipit-source-id: 0cbab3298
master
Phoebe Nichols 5 years ago committed by Facebook Github Bot
parent 578b1c95f1
commit 9be3af16ac

@ -0,0 +1,17 @@
(*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*)
open! IStd
let register_summary graph summary =
let caller_pname = Summary.get_proc_name summary in
let callee_pnames = summary.Summary.callee_pnames in
Typ.Procname.Set.iter
(fun callee_pname -> CallGraph.add_edge graph ~pname:callee_pname ~successor_pname:caller_pname)
callee_pnames
let build graph = SpecsFiles.iter ~f:(register_summary graph)

@ -0,0 +1,12 @@
(*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*)
open! IStd
(* Suppress unused value warning until this is used for incremental diff analysis *)
val build : CallGraph.t -> unit
[@@warning "-32"]
(** Build the graph from the summaries in the .specs files *)
Loading…
Cancel
Save