Module Hax_engine.Diagnostics

module T = Types
module Backend : sig ... end
module Phase : sig ... end
module Context : sig ... end
type kind = T.kind
val pp_kind : Ppx_deriving_runtime.Format.formatter -> kind -> Ppx_deriving_runtime.unit
val show_kind : kind -> Ppx_deriving_runtime.string
val equal_kind : kind -> kind -> Ppx_deriving_runtime.bool
val compare_kind : kind -> kind -> Prelude.int
type thir_span = T.span
val pp_thir_span : Ppx_deriving_runtime.Format.formatter -> thir_span -> Ppx_deriving_runtime.unit
val show_thir_span : thir_span -> Ppx_deriving_runtime.string
val equal_thir_span : thir_span -> thir_span -> Ppx_deriving_runtime.bool
val compare_thir_span : thir_span -> thir_span -> Prelude.int
type t = {
  1. context : Context.t;
  2. kind : kind;
  3. span : thir_span Prelude.list;
}
val pp : Ppx_deriving_runtime.Format.formatter -> t -> Ppx_deriving_runtime.unit
val show : t -> Ppx_deriving_runtime.string
val equal : t -> t -> Ppx_deriving_runtime.bool
val compare : t -> t -> Prelude.int
val to_thir_diagnostic : t -> Types.diagnostics
val ask_diagnostic_pretty_print : Types.diagnostics -> Prelude.string

Ask `cargo-hax` to pretty print a diagnostic

val pretty_print : t -> Prelude.string
val pretty_print_context_kind : Context.t -> kind -> Prelude.string
module Core : sig ... end
include module type of struct include Core end
val raise_fatal_error : 'never. t -> 'never
val report : t -> Prelude.unit
val try_ : 'x. (Prelude.unit -> 'x) -> t Prelude.list * 'x Prelude.option
val capture : 'a. (Prelude.unit -> 'a) -> 'a * t Prelude.list
val failure : context:Context.t -> span:Span.t -> kind -> 'a
module SpanFreeError : sig ... end