Database of analysis results
val filename_from_string : string ‑> filename
val filename_to_string : filename ‑> string
val file_exists : filename ‑> bool
val file_modified_time : ?symlink:bool ‑> filename ‑> float
Return the time when a file was last modified. The file must exist.
module Results_dir : sig ... end
val append_crc_cutoff : ?key:string ‑> ?crc_only:bool ‑> string ‑> string
Append a crc to the string, using string_crc_hex32.
Cut the string if it exceeds the cutoff limit.
Use an optional key to compute the crc.
Return only the crc if crc_only
is true.
val strip_crc : string ‑> string
Strip any crc attached to any string generated by string_append_crc_cutoff
val source_file_encoding : SourceFile.t ‑> string
string encoding of a source file (including path) as a single filename
type source_dir
source directory: the directory inside the results dir corresponding to a source file
include sig ... end
val compare_source_dir : source_dir ‑> source_dir ‑> int
val source_dir_get_internal_file : source_dir ‑> string ‑> filename
get the path to an internal file with the given extention (.tenv, ...)
val source_dir_from_source_file : SourceFile.t ‑> source_dir
get the source directory corresponding to a source file
val read_file_with_lock : string ‑> string ‑> string option
Read a file using a lock to allow write attempts in parallel.
val update_file_with_lock : string ‑> string ‑> (string ‑> string) ‑> unit
Update the file contents with the update function provided. If the directory does not exist, it is created. If the file does not exist, it is created, and update is given the empty string. A lock is used to allow write attempts in parallel.
val is_source_file : string ‑> bool
Check if a path is a Java, C, C++ or Objectve C source file according to the file extention