Module Soteria_c_lib.Compilation_database

type cmd = {
  1. directory : string;
  2. file : string;
  3. command : string list;
  4. original : Yojson.Basic.t;
    (*

    We keep track of the original yojson object corresponding to this item in the database, for when we need to write it out again.

    *)
}
val unescape_string : string -> string

Strings need to be properly unescaped, I think upgrading to Yojson 3.0 will fix this, but in the meantime the ecosystem is pretty locked...

val cmd_of_yojson : Yojson__Basic.t -> cmd
type t = cmd list
val of_yojson : Yojson__Basic.t -> t
val from_file : string -> t
val dump_originals : string -> cmd list -> unit