open Lints
open Severity
type 'a t
val of_default : severity -> severity t
val set_value : lint_kind -> 'a * Loc.t option -> 'a t -> 'a t
val set_all : (lint_kind * ('a * Loc.t option)) list -> 'a t -> 'a t
val get_default : 'a t -> 'a
val get_value : lint_kind -> 'a t -> 'a
val is_explicit : lint_kind -> 'a t -> bool
val get_loc : lint_kind -> 'a t -> Loc.t option
val iter : (lint_kind -> 'a * Loc.t option -> unit) -> 'a t -> unit
val fold : (lint_kind -> 'a * Loc.t option -> 'b -> 'b) -> 'a t -> 'b -> 'b
val map : ('a * Loc.t option -> 'a * Loc.t option) -> 'a t -> 'a t
val empty_severities : severity t
val default_severities : severity t
val is_enabled : lint_kind -> severity t -> bool
val is_suppressed : lint_kind -> severity t -> bool
val of_lines : severity t -> (int * string) list -> (severity t, int * string) result
val to_string : severity t -> string
type lint_parse_error =
| Invalid_setting
| Malformed_argument
| Naked_comment
| Nonexistent_rule
| Overwritten_argument
| Redundant_argument