Proofview_monad
This file defines the datatypes used as internal states by the tactic monad, and specialises the Logic_monad
to these types. It should not be used directly. Consider using Proofview
instead.
module Trace : sig ... end
type lazy_msg = unit -> Pp.t
We typically label nodes of Trace.tree
with messages to print. But we don't want to compute the result.
module Info : sig ... end
Info trace.
module StateStore : Store.S
type goal = Evar.t
val drop_state : goal_with_state -> goal
val get_state : goal_with_state -> StateStore.t
val goal_with_state : goal -> StateStore.t -> goal_with_state
val with_empty_state : goal -> goal_with_state
val map_goal_with_state : (goal -> goal) -> goal_with_state -> goal_with_state
Type of proof views: current evar_map
together with the list of focused goals, locally shelved goals and globally shelved goals.
module P : sig ... end
module Logical : sig ... end
module type State = sig ... end
module type Reader = sig ... end
module type Writer = sig ... end
module Solution : State with type t := Evd.evar_map
Lens to the evar_map
of the proofview.
module Comb : State with type t = goal_with_state list
Lens to the list of focused goals.
module Env : State with type t := Environ.env
Lens to the global environment.
module InfoL : sig ... end
Lens and utilities pertaining to the info trace