(************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* (goal list sigma * validation) and validation = (proof_tree list -> proof_tree) and tactic_expr = (open_constr, constr_pattern, evaluable_global_reference, inductive, ltac_constant, identifier, glob_tactic_expr) Tacexpr.gen_tactic_expr and atomic_tactic_expr = (open_constr, constr_pattern, evaluable_global_reference, inductive, ltac_constant, identifier, glob_tactic_expr) Tacexpr.gen_atomic_tactic_expr and tactic_arg = (open_constr, constr_pattern, evaluable_global_reference, inductive, ltac_constant, identifier, glob_tactic_expr) Tacexpr.gen_tactic_arg type hyp_location = identifier Tacexpr.raw_hyp_location type ltac_call_kind = | LtacNotationCall of string | LtacNameCall of ltac_constant | LtacAtomCall of glob_atomic_tactic_expr * atomic_tactic_expr option ref | LtacVarCall of identifier * glob_tactic_expr | LtacConstrInterp of rawconstr * ((identifier * constr) list * (identifier * identifier option) list) type ltac_trace = (loc * ltac_call_kind) list exception LtacLocated of (ltac_call_kind * ltac_trace * loc) * exn let abstract_tactic_box = ref (ref None)