package core
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=b0e23c1b1049e48cbbaa596d49927c66e6026506031bd7f5b485af6e9475b4e3
doc/core/Core/Info/index.html
Module Core.Info
Source
This module extends Base.Info
, which provides a type for info-level debug messages.
Serialization and comparison force the lazy message.
to_string_hum
forces the lazy message, which might be an expensive operation.
to_string_hum
usually produces a sexp; however, it is guaranteed that to_string_hum (of_string s) = s
.
If this string is going to go into a log file, you may find it useful to ensure that the string is only one line long. To do this, use to_string_mach t
.
Be careful that the body of the lazy or thunk does not access mutable data, since it will only be called at an undetermined later point.
val create :
?here:Lexing.position ->
?strict:unit ->
string ->
'a ->
('a -> Base.Sexp.t) ->
t
For create message a sexp_of_a
, sexp_of_a a
is lazily computed, when the info is converted to a sexp. So if a
is mutated in the time between the call to create
and the sexp conversion, those mutations will be reflected in the sexp. Use ~strict:()
to force sexp_of_a a
to be computed immediately.
Constructs a t
containing only a string from a format. This eagerly constructs the string.
Adds a sexp to the front.
Adds a lazy sexp to the front.
Adds a string and some other data in the form of an s-expression at the front.
of_exn
and to_exn
are primarily used with Error
, but their definitions have to be here because they refer to the underlying representation.
~backtrace:`Get
attaches the backtrace for the most recent exception. The same caveats as for Printexc.print_backtrace
apply. ~backtrace:(`This s)
attaches the backtrace s
. The default is no backtrace.
include Bin_prot.Binable.S with type t := t
include Bin_prot.Binable.S_only_functions with type t := t
This function only needs implementation if t
exposed to be a polymorphic variant. Despite what the type reads, this does *not* produce a function after reading; instead it takes the constructor tag (int) before reading and reads the rest of the variant t
afterwards.