package dolmen_loop

  1. Overview
  2. Docs
type lang = Logic.language
type ty_state = Typer.ty_state
type solve_state = unit
type 'solve state = {
  1. debug : bool;
  2. reports : Report.Conf.t;
  3. loc_style : [ `Short | `Contextual ];
  4. max_warn : int;
  5. cur_warn : int;
  6. time_limit : float;
  7. size_limit : float;
  8. input_dir : string;
  9. input_lang : lang option;
  10. input_mode : [ `Full | `Incremental ] option;
  11. input_source : [ `Stdin | `File of string | `Raw of string * string ];
  12. input_file_loc : Dolmen.Std.Loc.file;
  13. header_check : bool;
  14. header_state : Headers.t;
  15. header_licenses : string list;
  16. header_lang_version : string option;
  17. type_state : ty_state;
  18. type_check : bool;
  19. solve_state : 'solve;
  20. export_lang : (lang * Format.formatter) list;
}
exception Error of t
val loc_input : 'a state -> Dolmen.Std.Loc.loc -> Pp_loc.Input.t option
val pp_loc : 'a state -> Format.formatter -> Dolmen.Std.Loc.loc option -> unit
val error : ?loc:Dolmen.Std.Loc.full -> 'a state -> 'b Report.Error.t -> 'c -> 'd
val warn : ?loc:Dolmen.Std.Loc.full -> 'a state -> 'b Dolmen_loop__Report.warning -> 'c -> 'a state
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 is_interactive : 'a state -> bool
val prelude : 'a state -> string
val full_mode_switch : string Report.Warning.t
val switch_to_full_mode : string -> 'a state -> 'b state
val set_lang : 'a state -> lang -> 'b state