(************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* ('a -> int) -> 'a grammar_command (** Create a new grammar-modifying command with the given name. The function should modify the parser state and return the number of grammar extensions performed. *) val extend_grammar : 'a grammar_command -> 'a -> unit (** Extend the grammar of Coq with the given data. *) (** {5 Adding notations} *) val extend_constr_grammar : Notation.level -> notation_grammar -> unit (** Add a term notation rule to the parsing system. *) 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