This module extends Base.Error with bin_io.
val hash_fold_t : Base.Hash.state ‑> t ‑> Base.Hash.stateval hash : t ‑> Base.Hash.hash_valueval t_of_sexp : Base.Sexp.t ‑> tval sexp_of_t : t ‑> Base.Sexp.tval invariant : t Base__.Invariant_intf.invval to_string_hum : t ‑> stringval to_string_mach : t ‑> stringval to_string_hum_deprecated : t ‑> stringval of_string : string ‑> tval of_lazy : string Base.Lazy.t ‑> tval of_thunk : (unit ‑> string) ‑> tval create : ?here:Base__.Source_code_position0.t ‑> ?strict:unit ‑> string ‑> 'a ‑> ('a ‑> Base.Sexp.t) ‑> tval create_s : Base.Sexp.t ‑> tval createf : ('a, unit, string, t) Pervasives.format4 ‑> 'aval tag_arg : t ‑> string ‑> 'a ‑> ('a ‑> Base.Sexp.t) ‑> tval of_exn : ?backtrace:[ `Get | `This of string ] ‑> exn ‑> tval to_exn : t ‑> exnval pp : Caml.Format.formatter ‑> t ‑> unitmodule Internal_repr = Base__Error.Internal_reprval raise : t ‑> 'aval raise_s : Base.Sexp.t ‑> 'aval to_info : t ‑> Base.Info.tval of_info : Base.Info.t ‑> tThis include is the source of the bin_io functions.
include Core_kernel__.Info_intf.Extension with type t := tinclude sig ... endval bin_t : t Bin_prot.Type_class.tval bin_read_t : t Bin_prot.Read.readerval __bin_read_t__ : (Core_kernel__.Import.int ‑> t) Bin_prot.Read.readerval bin_reader_t : t Bin_prot.Type_class.readerval bin_size_t : t Bin_prot.Size.sizerval bin_write_t : t Bin_prot.Write.writerval bin_writer_t : t Bin_prot.Type_class.writerval bin_shape_t : Bin_prot.Shape.tmodule Stable : sig ... endError.t is not wire-compatible with Error.Stable.V1.t. See info.mli for
details.
val failwiths : ?strict:Core_kernel__.Import.unit ‑> ?here:Lexing.position ‑> Core_kernel__.Import.string ‑> 'a ‑> ('a ‑> Base.Sexp.t) ‑> _ failwiths ?strict ?here message a sexp_of_a
= Error.raise (Error.create ?strict ?here s a sexp_of_a)As with Error.create, sexp_of_a a is lazily computed when the error is converted
to a sexp. So if a is mutated in the time between the call to failwiths and the
sexp conversion, those mutations will be reflected in the error message. Use
~strict:() to force sexp_of_a a to be computed immediately.
The pa_fail preprocessor replaces failwiths with failwiths ?here:[%here] so that
one does not need to (and cannot) supply [%here]. pa_fail does not add
?here:[%here] to Error.failwiths.
In this signature we write ?here:Lexing.position rather than
?here:Source_code_position.t to avoid a circular dependency.
failwithp here is like failwiths ~here, except that you can provide a source
position yourself (which is only interesting if you don't provide [%here]).
val failwithp : ?strict:Core_kernel__.Import.unit ‑> Lexing.position ‑> Core_kernel__.Import.string ‑> 'a ‑> ('a ‑> Base.Sexp.t) ‑> _