You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
2.0 KiB

(*
* Copyright (c) 2009 - 2013 Monoidics ltd.
* Copyright (c) 2013 - present Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*)
(** Printers for the analysis results *)
(** Current html formatter *)
val html_formatter : Format.formatter ref
(** return true if the node was visited during footprint and during re-execution*)
val is_visited_phase : Cfg.Node.t -> bool * bool
(** return true if the node was visited during analysis *)
val is_visited : Cfg.Node.t -> bool
(** Execute the delayed print actions *)
val force_delayed_prints : unit -> unit
(** Start a session, and create a new html fine for the node if it does not exist yet *)
val start_session : Cfg.node -> Location.t -> Procname.t -> int -> unit
(** Finish a session, and perform delayed print actions if required *)
val finish_session : Cfg.node -> unit
(** Write log file for the proc, the boolean indicates whether to print whole seconds only *)
val proc_write_log : bool -> Cfg.cfg -> Procname.t -> unit
(** Module to read specific lines from files.
The data from any file will stay in memory until the handle is collected by the gc *)
module LineReader : sig
type t
(** create a line reader *)
val create : unit -> t
(** get the line from a source file and line number *)
val from_file_linenum_original : t -> DB.source_file -> int -> string option
(** get the line from a source file and line number looking for the copy of the file in the results dir *)
val from_file_linenum : t -> DB.source_file -> int -> string option
(** get the line from a location looking for the copy of the file in the results dir *)
val from_loc : t -> Location.t -> string option
end
(** Create filename.c.html with line numbers and links to nodes for each file in the exe_env *)
val c_files_write_html : LineReader.t -> Exe_env.t -> unit