Module Logtk.Util
Some helpers
Time facilities
Misc
module Section : sig ... end
Debug section
val debugf : ?section:Section.t -> int -> ('a, Format.formatter, unit, unit) Pervasives.format4 -> ('a -> unit) -> unit
Print a debug message, with the given section and verbosity level. The message might be dropped if its level is too high.
val ksprintf_noc : f:(string -> 'a) -> ('b, Format.formatter, unit, 'a) Pervasives.format4 -> 'b
Same as
CCFormat.ksprintf
, but without colors
val err_spf : ('b, Format.formatter, unit, string) Pervasives.format4 -> 'b
Version of
sprintf
that adds a colored "error" prefix
val warnf : ('a, Format.formatter, unit, unit) Pervasives.format4 -> 'a
Emit warning, with formatting
exception
Error of string * string
generalist error that do not really belong elsewhere.
Error (where,what)
means that errorwhat
was raised fromwhere
.
val errorf : where:string -> ('b, Format.formatter, unit, 'a) Pervasives.format4 -> 'b
Formatting version of
error
OCaml Stack
requires ocaml >= 4.01
- since
- 0.8
module Exn : sig ... end
profiling facilities
val mk_profiler : string -> profiler
Enable/disable profiling
Create a named profiler
val enter_prof : profiler -> unit
Create a named profiler
Enter the profiler
val exit_prof : profiler -> unit
Enter the profiler
Exit the profiler
val with_prof : profiler -> ('a -> 'b) -> 'a -> 'b
Exit the profiler
Runtime statistics
val mk_stat : string -> stat
val print_global_stats : comment:string -> unit -> unit
comment prefix
val incr_stat : stat -> unit
comment prefix
val add_stat : stat -> int -> unit
Flags as integers
module Flag : sig ... end
Others
val finally : do_:(unit -> unit) -> (unit -> 'a) -> 'a
finally ~do_ f
callsf ()
and returns its result. If it raises, the same exception is raised; in any case,do_ ()
is called afterf ()
terminates.
val pp_pair : ?sep:string -> 'a CCFormat.printer -> 'b CCFormat.printer -> ('a * 'b) CCFormat.printer
val pp_list : ?sep:string -> 'a CCFormat.printer -> 'a list CCFormat.printer
Print a list without begin/end separators
val pp_seq : ?sep:string -> 'a CCFormat.printer -> 'a Sequence.t CCFormat.printer
val pp_list0 : ?sep:string -> 'a CCFormat.printer -> 'a list CCFormat.printer
Print a list with a whitespace in front if it's non empty, or does nothing if the list is empty Default separator is " "
val tstp_needs_escaping : string -> bool
Is this name a proper TSTP identifier, or does it need ' ' around it?
val ord_option : 'a CCOrd.t -> 'a option CCOrd.t
val take_drop_while : ('a -> bool) -> 'a list -> 'a list * 'a list
val map_product : f:('a -> 'b list list) -> 'a list -> 'b list list
val seq_map_l : f:('a -> 'b list) -> 'a list -> 'b list Sequence.t
val seq_zipi : 'a Sequence.t -> (int * 'a) Sequence.t
val invalid_argf : ('a, Format.formatter, unit, 'b) Pervasives.format4 -> 'a
val failwithf : ('a, Format.formatter, unit, 'b) Pervasives.format4 -> 'a
module Int_map : CCMap.S with type Int_map.key = int
module Int_set : CCSet.S with type Int_set.elt = int
File utils
val popen : cmd:string -> input:string -> string or_error
Run the given command
cmd
with the giveninput
, wait for it to terminate, and return its stdout.