VernactypesInterpretation of extended vernac phrases.
module Prog : sig ... endmodule Proof : sig ... endmodule OpaqueAccess : sig ... endtype no_state = (unit, unit, unit) state_genval no_state : no_stateUseful for patterns like { no_state with proof = newproof } when modifying a subset of the state.
val ignore_state :
((unit, unit) Prog.t, (unit, unit) Proof.t, unit OpaqueAccess.t) state_gentype 'r typed_vernac_gen = | TypedVernac : {spec : (('inprog, 'outprog) Prog.t,
('inproof, 'outproof) Proof.t,
'inaccess OpaqueAccess.t)
state_gen;run : ('inprog, 'inproof, 'inaccess) state_gen ->
('outprog, 'outproof, unit) state_gen * 'r;} -> 'r typed_vernac_gentype typed_vernac = unit typed_vernac_genval typed_vernac_gen :
(('inprog, 'outprog) Prog.t,
('inproof, 'outproof) Proof.t,
'inaccess OpaqueAccess.t)
state_gen ->
(('inprog, 'inproof, 'inaccess) state_gen ->
('outprog, 'outproof, unit) state_gen * 'r) ->
'r typed_vernac_genval map_typed_vernac : ('a -> 'b) -> 'a typed_vernac_gen -> 'b typed_vernac_genval typed_vernac :
(('inprog, 'outprog) Prog.t,
('inproof, 'outproof) Proof.t,
'inaccess OpaqueAccess.t)
state_gen ->
(('inprog, 'inproof, 'inaccess) state_gen ->
('outprog, 'outproof, unit) state_gen) ->
typed_vernactype full_state = (Prog.stack, Vernacstate.LemmaStack.t option, unit) state_genval run : ?loc:Loc.t -> 'r typed_vernac_gen -> full_state -> full_state * 'rSome convenient typed_vernac constructors. Used by coqpp.
val vtdefault : (unit -> unit) -> typed_vernacval vtnoproof : (unit -> unit) -> typed_vernacval vtcloseproof :
?check_late_init:bool ->
(lemma:Declare.Proof.t -> pm:Declare.OblState.t -> Declare.OblState.t) ->
typed_vernacval vtopenproof : (unit -> Declare.Proof.t) -> typed_vernacval vtmodifyproof :
?check_late_init:bool ->
(pstate:Declare.Proof.t -> Declare.Proof.t) ->
typed_vernacval vtreadproofopt : (pstate:Declare.Proof.t option -> unit) -> typed_vernacval vtreadproof : (pstate:Declare.Proof.t -> unit) -> typed_vernacval vtreadprogram : (pm:Declare.OblState.t -> unit) -> typed_vernacval vtmodifyprogram :
(pm:Declare.OblState.t -> Declare.OblState.t) ->
typed_vernacval vtdeclareprogram :
(pm:Declare.OblState.t -> Declare.Proof.t) ->
typed_vernacval vtopenproofprogram :
(pm:Declare.OblState.t -> Declare.OblState.t * Declare.Proof.t) ->
typed_vernacval vtopaqueaccess :
(opaque_access:Global.indirect_accessor -> unit) ->
typed_vernac