Ltac_plugin.Pptactic
This module implements pretty-printers for ltac_expr syntactic objects and their subcomponents.
type 'a grammar_tactic_prod_item_expr =
| TacTerm of string |
| TacNonTerm of ('a * Names.Id.t option) Loc.located |
type 'a raw_extra_genarg_printer =
Environ.env ->
Evd.evar_map ->
( Environ.env -> Evd.evar_map -> Constrexpr.constr_expr -> Pp.t ) ->
( Environ.env -> Evd.evar_map -> Constrexpr.constr_expr -> Pp.t ) ->
( Environ.env ->
Evd.evar_map ->
Constrexpr.entry_relative_level ->
Tacexpr.raw_tactic_expr ->
Pp.t ) ->
'a ->
Pp.t
type 'a glob_extra_genarg_printer =
Environ.env ->
Evd.evar_map ->
( Environ.env -> Evd.evar_map -> Genintern.glob_constr_and_expr -> Pp.t ) ->
( Environ.env -> Evd.evar_map -> Genintern.glob_constr_and_expr -> Pp.t ) ->
( Environ.env ->
Evd.evar_map ->
Constrexpr.entry_relative_level ->
Tacexpr.glob_tactic_expr ->
Pp.t ) ->
'a ->
Pp.t
type 'a extra_genarg_printer =
Environ.env ->
Evd.evar_map ->
( Environ.env -> Evd.evar_map -> EConstr.constr -> Pp.t ) ->
( Environ.env -> Evd.evar_map -> EConstr.constr -> Pp.t ) ->
( Environ.env ->
Evd.evar_map ->
Constrexpr.entry_relative_level ->
Geninterp.Val.t ->
Pp.t ) ->
'a ->
Pp.t
type 'a raw_extra_genarg_printer_with_level =
Environ.env ->
Evd.evar_map ->
( Environ.env -> Evd.evar_map -> Constrexpr.constr_expr -> Pp.t ) ->
( Environ.env -> Evd.evar_map -> Constrexpr.constr_expr -> Pp.t ) ->
( Environ.env ->
Evd.evar_map ->
Constrexpr.entry_relative_level ->
Tacexpr.raw_tactic_expr ->
Pp.t ) ->
Constrexpr.entry_relative_level ->
'a ->
Pp.t
type 'a glob_extra_genarg_printer_with_level =
Environ.env ->
Evd.evar_map ->
( Environ.env -> Evd.evar_map -> Genintern.glob_constr_and_expr -> Pp.t ) ->
( Environ.env -> Evd.evar_map -> Genintern.glob_constr_and_expr -> Pp.t ) ->
( Environ.env ->
Evd.evar_map ->
Constrexpr.entry_relative_level ->
Tacexpr.glob_tactic_expr ->
Pp.t ) ->
Constrexpr.entry_relative_level ->
'a ->
Pp.t
type 'a extra_genarg_printer_with_level =
Environ.env ->
Evd.evar_map ->
( Environ.env -> Evd.evar_map -> EConstr.constr -> Pp.t ) ->
( Environ.env -> Evd.evar_map -> EConstr.constr -> Pp.t ) ->
( Environ.env ->
Evd.evar_map ->
Constrexpr.entry_relative_level ->
Geninterp.Val.t ->
Pp.t ) ->
Constrexpr.entry_relative_level ->
'a ->
Pp.t
val declare_extra_genarg_pprule :
( 'a, 'b, 'c ) Genarg.genarg_type ->
'a raw_extra_genarg_printer ->
'b glob_extra_genarg_printer ->
'c extra_genarg_printer ->
unit
val declare_extra_genarg_pprule_with_level :
( 'a, 'b, 'c ) Genarg.genarg_type ->
'a raw_extra_genarg_printer_with_level ->
'b glob_extra_genarg_printer_with_level ->
'c extra_genarg_printer_with_level ->
Constrexpr.entry_relative_level ->
Constrexpr.entry_relative_level ->
unit
val declare_extra_vernac_genarg_pprule :
( 'a, 'b, 'c ) Genarg.genarg_type ->
'a raw_extra_genarg_printer ->
unit
type grammar_terminals =
Genarg.ArgT.any Extend.user_symbol grammar_tactic_prod_item_expr list
val pr_goal_selector : toplevel:bool -> Goal_select.t -> Pp.t
val declare_notation_tactic_pprule : Names.KerName.t -> pp_tactic -> unit
val pr_with_occurrences : ( 'a -> Pp.t ) -> 'a Locus.with_occurrences -> Pp.t
val pr_red_expr :
Environ.env ->
Evd.evar_map ->
(( Environ.env ->
Evd.evar_map ->
'a ->
Pp.t )
* ( Environ.env ->
Evd.evar_map ->
'a ->
Pp.t )
* ( 'b ->
Pp.t )
* ( Environ.env ->
Evd.evar_map ->
'c ->
Pp.t )) ->
( 'a, 'b, 'c ) Genredexpr.red_expr_gen ->
Pp.t
val pr_may_eval :
Environ.env ->
Evd.evar_map ->
( Environ.env -> Evd.evar_map -> 'a -> Pp.t ) ->
( Environ.env -> Evd.evar_map -> 'a -> Pp.t ) ->
( 'b -> Pp.t ) ->
( Environ.env -> Evd.evar_map -> 'c -> Pp.t ) ->
( 'a, 'b, 'c ) Genredexpr.may_eval ->
Pp.t
val pr_and_short_name : ( 'a -> Pp.t ) -> 'a Genredexpr.and_short_name -> Pp.t
val pr_evaluable_reference_env :
Environ.env ->
Tacred.evaluable_global_reference ->
Pp.t
val pr_quantified_hypothesis : Tactypes.quantified_hypothesis -> Pp.t
val pr_in_clause : ( 'a -> Pp.t ) -> 'a Locus.clause_expr -> Pp.t
val pr_clauses : bool option -> ( 'a -> Pp.t ) -> 'a Locus.clause_expr -> Pp.t
val pr_raw_generic :
Environ.env ->
Evd.evar_map ->
Genarg.rlevel Genarg.generic_argument ->
Pp.t
val pr_glb_generic :
Environ.env ->
Evd.evar_map ->
Genarg.glevel Genarg.generic_argument ->
Pp.t
val pr_raw_extend :
Environ.env ->
Evd.evar_map ->
int ->
Tacexpr.ml_tactic_entry ->
Tacexpr.raw_tactic_arg list ->
Pp.t
val pr_glob_extend :
Environ.env ->
int ->
Tacexpr.ml_tactic_entry ->
Tacexpr.glob_tactic_arg list ->
Pp.t
val pr_extend :
( Geninterp.Val.t -> Pp.t ) ->
int ->
Tacexpr.ml_tactic_entry ->
Geninterp.Val.t list ->
Pp.t
val pr_alias_key : Names.KerName.t -> Pp.t
val pr_alias :
( Geninterp.Val.t -> Pp.t ) ->
int ->
Names.KerName.t ->
Geninterp.Val.t list ->
Pp.t
val pr_ltac_constant : Tacexpr.ltac_constant -> Pp.t
val pr_raw_tactic :
Environ.env ->
Evd.evar_map ->
Tacexpr.raw_tactic_expr ->
Pp.t
val pr_raw_tactic_level :
Environ.env ->
Evd.evar_map ->
Constrexpr.entry_relative_level ->
Tacexpr.raw_tactic_expr ->
Pp.t
val pr_glob_tactic : Environ.env -> Tacexpr.glob_tactic_expr -> Pp.t
val pr_atomic_tactic :
Environ.env ->
Evd.evar_map ->
Tacexpr.atomic_tactic_expr ->
Pp.t
val pr_hintbases : string list option -> Pp.t
val pr_match_pattern : ( 'a -> Pp.t ) -> 'a Tacexpr.match_pattern -> Pp.t
val pr_match_rule :
bool ->
( 'a -> Pp.t ) ->
( 'b -> Pp.t ) ->
( 'b, 'a ) Tacexpr.match_rule ->
Pp.t
val pr_value : Constrexpr.entry_relative_level -> Geninterp.Val.t -> Pp.t
val ltop : Constrexpr.entry_relative_level
val make_constr_printer :
( Environ.env ->
Evd.evar_map ->
Constrexpr.entry_relative_level ->
'a ->
Pp.t ) ->
'a Genprint.top_printer