Module Ltac_plugin.Tacinterp

val ltac_trace_info : Tacexpr.ltac_stack Exninfo.t
module TacStore = Tacenv.TacStore
type interp_sign = Tacenv.interp_sign = {
lfun : Geninterp.Val.t Names.Id.Map.t;
poly : PolyFlags.t;
extra : TacStore.t;
}

Signature for interpretation: val\_interp and interpretation functions

module Value : sig ... end
type value = Value.t

Values for interpretation

val f_avoid_ids : Names.Id.Set.t TacStore.field
val extract_loc : interp_sign -> Loc.t option

Given an interpretation signature, extract all values which are coercible to a constr.

val set_debug : Tactic_debug.debug_info -> unit

Sets the debugger mode

val get_debug : unit -> Tactic_debug.debug_info

Gives the state of debug

Adds an interpretation function for extra generic arguments

val interp_genarg : (_'glb'top) Genarg.genarg_type -> interp_sign -> 'glb -> 'top Ftactic.t
val generic_interp_genarg : interp_sign -> Genarg.glob_generic_argument -> Value.t Ftactic.t

Interprets any expression

Interprets an expression that evaluates to a constr

Interprets redexp arguments

Interprets tactic expressions

Initial call for interpretation

val eval_tactic : Tacexpr.glob_tactic_expr -> unit Proofview.tactic
val eval_tactic_ist : interp_sign -> Tacexpr.glob_tactic_expr -> unit Proofview.tactic

Same as eval_tactic, but with the provided interp_sign.

val tactic_of_value : interp_sign -> Tacarg.tacvalue -> unit Proofview.tactic
val tactic_of_val : interp_sign -> Value.t -> unit Proofview.tactic

Globalization + interpretation

type ltac_expr = {
global : bool;
ast : Tacexpr.raw_tactic_expr;
}

Hides interpretation for pretty-print

val hide_interp : ltac_expr -> ComTactic.interpretable

Internals that can be useful for syntax extensions.

val interp_ltac_var : (value -> 'a) -> interp_sign -> (Environ.env * Evd.evar_map) option -> Names.lident -> 'a
val interp_int : interp_sign -> Names.lident -> int
val interp_int_or_var : interp_sign -> int Locus.or_var -> int
val default_ist : unit -> interp_sign

Empty ist with debug set on the current value.

module Register : sig ... end