`sig
exception Invalid_section of string
exception Invalid_element of string
exception Missing_section of string
exception Missing_element of string
exception Ini_parse_error of (int * string)
type attribute_specification = {
atr_name : string;
atr_required : bool;
atr_default : string list option;
atr_validator : Re.Pcre.regexp option;
}
type section_specification = {
sec_name : string;
sec_required : bool;
sec_attributes : Inifiles.attribute_specification list;
}
type specification = Inifiles.section_specification list
class inifile :
?spec:Inifiles.specification ->
string ->
object
method attrs : string -> string list
method delval : string -> string -> unit
method getaval : string -> string -> string list
method getval : string -> string -> string
method iter : (string -> string -> unit) -> string -> unit
method save : ?file:string -> unit -> unit
method sects : string list
method setval : string -> string -> string -> unit
end
val fold : ('a -> Inifiles.inifile -> 'a) -> string -> 'a -> 'a
end`