Module Proofview.NonLogical
The NonLogical module allows the execution of effects (including I/O) in tactics (non-logical side-effects are not discarded at failures).
val (!) : 'a ref -> 'a tval read_line : string tval print_char : char -> unit tval print_debug : Pp.t -> unit tLoggers. The buffer is also flushed.
val print_warning : Pp.t -> unit tval print_notice : Pp.t -> unit tval print_info : Pp.t -> unit tval raise : Exninfo.iexn -> 'a tPervasives.raise. Except that exceptions are wrapped withLogic_monad.Exception.
val catch : 'a t -> (Exninfo.iexn -> 'a t) -> 'a ttry ... with ...but restricted toLogic_monad.Exception.
val timeout : int -> 'a t -> 'a tval make : (unit -> 'a) -> 'a tConstruct a monadified side-effect. Exceptions raised by the argument are wrapped with
Logic_monad.Exception.
val run : 'a t -> 'arunperforms effects.