Bisect_commonThis module provides type definitions, and functions used by the various parts of Bisect.
type point_definition = {offset : int;Point offset, relative to file beginning.
*)identifier : int;Point identifier, unique in file.
*)}The type of point definitions, that is places of interest in the source code.
val try_out_channel : bool -> string -> (out_channel -> 'a) -> 'atry_out_channel bin filename f opens an output channel for the file given at filename, and then runs f. When f returns or raises an exception, the channel is closed. If bin is true, the channel is opened in binary mode. Otherwise, it is opened in text mode.
Exception to be raised when a read file does not conform to the Bisect format. The parameter is the name of the incriminated file and the reason of the error.
val write_runtime_data : out_channel -> unitwrite_runtime_data o writes the current runtime data to the output channel oc using the Bisect file format. The runtime data list encodes a map (through an association list) from files to arrays of integers (the value at index i being the number of times point i has been visited). The arrays are paired with point definition lists, giving the location of each point in the file.
Raises Sys_error if an i/o error occurs.
Same as write_runtime_data, but accumulates output in a string instead.
val write_points : point_definition list -> stringwrite_points pts converts the point definitions pts to a string. The string is a binary byte sequence; it is not meant to be legible.
read_runtime_data f reads the runtime data from file f.
Raises Sys_error if an i/o error occurs. May also raise Invalid_file, Unsupported_version, or Modified_file.
val read_points : string -> point_definition listread_points s reads point definitions from the string s.
val register_file :
string ->
point_count:int ->
point_definitions:string ->
[ `Staged of int -> unit ]register_file file ~point_count ~point_definitions indicates that the file file is part of the application that has been instrumented. point_definitions is a serialized Common.point_definition list giving the locations of all points in the file. The returned callback is used to increment visitation counts.
val bisect_file : string option refDefault value for BISECT_FILE.
val bisect_silent : string option refDefault value for BISECT_SILENT.