Goblint_lib.GobConfigNew, untyped, path-based configuration subsystem.
path' ::== \epsilon (* *)
| . <field-name> path' (* field access *)
| [ <index-nr> ] path' (* array index access *)
| [ + ] path' (* cons to array *)
| [ - ] path' (* cons away from array *)
| [ * ] path' (* reset array *)
path ::== path' (* *)
| <field_name> path' (* you can leave out the first dot *)All functions failwith on error. Warnings are generated in verbose mode.
There is a "conf" trace option that traces setting.
val building_spec : bool Prelude.refmodule Validator : sig ... endmodule ValidatorRequireAll : sig ... endmodule type S = sig ... endThe type for gobConfig module.
include module type of struct include Impl endval get_json : string -> Yojson.Safe.tFunctions to modify conf variables by trying to parse the value. The second argument must be valid Json except single quotes represent double quotes.
val get_list : string -> Yojson.Safe.t listGet a list of values
val set_list : string -> Yojson.Safe.t list -> unitSet a list of values
val write_file : Fpath.t -> unitWrite the current configuration to filename
val merge_file : Fpath.t -> unitMerge configurations from a file with current.
val merge : Yojson.Safe.t -> unitMerge configurations from a JSON object with current.
val json_conf : Yojson.Safe.t Prelude.ref