package dolmen_loop

  1. Overview
  2. Docs
type perm =
  1. | Allow
  2. | Warn
  3. | Error
exception File_not_found of Dolmen.Std.Loc.full * string * string
exception Input_lang_changed of Logic.language * Logic.language
type lang = Logic.language
type ty_state = Typer.ty_state
type solve_state = unit
type 'solve state = {
  1. debug : bool;
  2. context : bool;
  3. max_warn : int;
  4. cur_warn : int;
  5. time_limit : float;
  6. size_limit : float;
  7. input_dir : string;
  8. input_lang : lang option;
  9. input_mode : [ `Full | `Incremental ] option;
  10. input_source : [ `Stdin | `File of string | `Raw of string * string ];
  11. input_file_loc : Dolmen.Std.Loc.file;
  12. header_check : bool;
  13. header_state : Headers.t;
  14. header_licenses : string list;
  15. header_lang_version : string option;
  16. type_state : ty_state;
  17. type_check : bool;
  18. type_strict : bool;
  19. solve_state : 'solve;
  20. export_lang : (lang * Stdlib.Format.formatter) list;
}
val pp_loc : Stdlib.Format.formatter -> Dolmen.Std.Loc.loc option -> unit
val error : ?code:Code.t -> ?loc:Dolmen.Std.Loc.full -> 'a -> ('b, Stdlib.Format.formatter, unit, unit, unit, 'c) Stdlib.format6 -> 'd
val warn : ?loc:Dolmen.Std.Loc.full -> 'a state -> ('b, Stdlib.Format.formatter, unit, 'c state) Stdlib.format4 -> 'd
val flush : 'a state -> unit -> 'b state
val time_limit : 'a state -> float
val size_limit : 'a state -> float
val input_dir : 'a state -> string
val input_mode : 'a state -> [ `Full | `Incremental ] option
val input_lang : 'a state -> lang option
val input_source : 'a state -> [ `File of string | `Raw of string * string | `Stdin ]
val input_file_loc : 'a state -> Dolmen.Std.Loc.file
val set_input_file_loc : 'a state -> Dolmen.Std.Loc.file -> 'b state
val set_mode : 'a state -> [ `Full | `Incremental ] -> 'b state
val header_state : 'a state -> Headers.t
val set_header_state : 'a state -> Headers.t -> 'b state
val check_headers : 'a state -> bool
val allowed_licenses : 'a state -> string list
val allowed_lang_version : 'a state -> string option
val ty_state : 'a state -> ty_state
val set_ty_state : 'a state -> ty_state -> 'b state
val typecheck : 'a state -> bool
val strict_typing : 'a state -> bool
val is_interactive : 'a state -> bool
val prelude : 'a state -> string
val switch_to_full_mode : string -> 'a state -> 'b state
val set_lang_aux : 'a state -> lang -> 'b state
val set_lang : 'a state -> lang -> 'b state
val start : 'a -> unit
val stop : 'a -> unit
val file_not_found : loc:Dolmen.Std.Loc.full -> dir:string -> file:string -> 'a