Module Dolmen_loop.State

type 'a info = {
  1. name : string;
  2. pipe : string;
}
module M : sig ... end
type t = M.t
type 'a key = 'a M.key
type report_style =
  1. | Minimal
  2. | Regular
  3. | Contextual
type source = [
  1. | `Stdin
  2. | `File of string
  3. | `Raw of string * string
]
type mode = [
  1. | `Full
  2. | `Incremental
]
type 'lang file = {
  1. lang : 'lang option;
  2. mode : mode option;
  3. loc : Dolmen.Std.Loc.file;
  4. dir : string;
  5. source : source;
}
exception Error of t
exception Key_not_found of t * string * string
val split_input : [< `File of string | `Stdin ] -> string * [> `File of string | `Stdin ]
val mk_file : ?lang:'a -> ?mode:mode -> ?loc:Dolmen.Std.Loc.file -> string -> source -> 'a file
module type S = sig ... end
val empty : t
val create_key : pipe:string -> string -> 'a M.key
val get : 'a M.key -> t -> 'a
val get_or : default:'a -> 'a M.key -> M.t -> 'a
val set : 'a M.key -> 'a -> M.t -> M.t
val update_opt : 'a M.key -> ('a option -> 'a option) -> M.t -> M.t
val update : 'a M.key -> ('a -> 'a) -> t -> M.t
val pipe : string
val bt : bool key
val debug : bool key
val reports : Report.Conf.t key
val report_style : report_style key
val max_warn : int key
val cur_warn : int key
val time_limit : float key
val size_limit : float key
val logic_file : Logic.language file key
val response_file : Response.language file key
val init : ?bt:bool -> debug:bool -> report_style:report_style -> reports:Report.Conf.t -> max_warn:int -> ?cur_warn:int -> time_limit:float -> size_limit:float -> response_file:Response.language file -> M.t -> M.t
val loc_input : ?file:'a file -> t -> Dolmen.Std.Loc.loc -> Pp_loc.Input.t option
val pp_loc : ?file:'a file -> t -> Stdlib.Format.formatter -> Dolmen.Std.Loc.loc option -> unit
val flush : t -> unit -> M.t
val error : ?file:'a file -> ?loc:Dolmen.Std.Loc.full -> t -> 'b Report.Error.t -> 'b -> 'c
val warn : ?file:'a file -> ?loc:Dolmen.Std.Loc.full -> t -> ([ `Warning ], 'b) Dolmen_loop__Report.aux -> 'b -> t