Module Core_kernel.Debug
Utilities for printing debug messages.
val eprint : Core_kernel__.Import.string -> Core_kernel__.Import.uniteprint messageprints to stderrmessage, followed by a newline and flush. This is the same asprerr_endline.
val eprints : Core_kernel__.Import.string -> 'a -> ('a -> Sexp.t) -> Core_kernel__.Import.uniteprints message a sexp_of_aprints to stderrmessageandaas a sexp, followed by a newline and flush.
val eprint_s : Sexp.t -> Core_kernel__.Import.uniteprint_s sexpprintssexpto stderr, followed by a newline and a flush.
val eprintf : ('r, Core_kernel__.Import.unit, Core_kernel__.Import.string, Core_kernel__.Import.unit) Core_kernel__.Import.format4 -> 'reprintf message arg1 ... argnprints to stderrmessage, with sprintf-style format characters instantiated, followed by a newline and flush.
module Make : functor () sig ... endDebug.Makeproduces adebugfunction used to wrap a function to display arguments before calling and display results after returning. Intended usage is:
val am : Source_code_position.t -> Core_kernel__.Import.unitam,ams, andamfoutput a source code position and backtrace to stderr.amfaccepts a printf-style format string.amsaccepts a message, value, and sexp converter for that value. Typical usage looks like:...; Debug.am [%here]; ...; Debug.amf [%here] "hello (%s, %s)" (X.to_string x) (Y.to_string y); ...; Debug.ams [%here] "hello" (x, y) <:sexp_of< X.t * Y.t >>; ...;The
am*functions output source code positions in the standard format "FILE:LINE:COL", which means that one can use a tool like emacs grep-mode on a buffer containing debug messages to step through one's code by stepping through the messages.
val ams : Source_code_position.t -> Core_kernel__.Import.string -> 'a -> ('a -> Sexp.t) -> Core_kernel__.Import.unitval amf : Source_code_position.t -> ('r, Core_kernel__.Import.unit, Core_kernel__.Import.string, Core_kernel__.Import.unit) Core_kernel__.Import.format4 -> 'rval should_print_backtrace : Core_kernel__.Import.bool Core_kernel__.Import.refshould_print_backtracegoverns whether theam*functions print a backtrace.