(************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* notation_grammar -> unit (** Add a term notation rule to the parsing system. *) val extend_tactic_grammar : KerName.t -> tactic_grammar -> unit (** Add a tactic notation rule to the parsing system. This produces a TacAlias tactic with the provided kernel name. *) val extend_ml_tactic_grammar : Tacexpr.ml_tactic_name -> Tacexpr.raw_tactic_expr grammar_prod_item list list -> unit (** Add a ML tactic notation rule to the parsing system. This produces a TacML tactic with the provided string as name. *) val recover_constr_grammar : notation -> Notation.level -> notation_grammar (** For a declared grammar, returns the rule + the ordered entry types of variables in the rule (for use in the interpretation) *) val with_grammar_rule_protection : ('a -> 'b) -> 'a -> 'b (** {5 Adding tactic quotations} *) val create_ltac_quotation : string -> ('grm Loc.located -> 'raw) -> ('raw, 'glb, 'top) genarg_type -> 'grm Gram.entry -> unit (** [create_ltac_quotation name f wit e] adds a quotation rule to Ltac, that is, Ltac grammar now accepts arguments of the form ["name" ":" ], and generates a generic argument using [f] on the entry parsed by [e]. *)