Database of analysis results
val filename_from_string : string ‑> filenameval filename_to_string : filename ‑> stringval file_exists : filename ‑> boolval file_modified_time : ?symlink:bool ‑> filename ‑> floatReturn the time when a file was last modified. The file must exist.
module Results_dir : sig ... endval append_crc_cutoff : ?key:string ‑> ?crc_only:bool ‑> string ‑> stringAppend 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 ‑> stringStrip any crc attached to any string generated by string_append_crc_cutoff
val source_file_encoding : SourceFile.t ‑> stringstring encoding of a source file (including path) as a single filename
type source_dirsource directory: the directory inside the results dir corresponding to a source file
include sig ... endval compare_source_dir : source_dir ‑> source_dir ‑> intval source_dir_get_internal_file : source_dir ‑> string ‑> filenameget the path to an internal file with the given extention (.tenv, ...)
val source_dir_from_source_file : SourceFile.t ‑> source_dirget the source directory corresponding to a source file
val read_file_with_lock : string ‑> string ‑> string optionRead a file using a lock to allow write attempts in parallel.
val update_file_with_lock : string ‑> string ‑> (string ‑> string) ‑> unitUpdate 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 ‑> boolCheck if a path is a Java, C, C++ or Objectve C source file according to the file extention