diff options
| author | herbelin | 2000-11-20 08:52:56 +0000 |
|---|---|---|
| committer | herbelin | 2000-11-20 08:52:56 +0000 |
| commit | d913ea8ae9623efd1fb607dac696b0f63b9e827f (patch) | |
| tree | acb6512b62f88c3a14ecf4b6b710173660b067e7 | |
| parent | b7e5541cd7b04f331b8939b069b217029e11f00b (diff) | |
Nouvelle entrée qualidarg pour noms qualifiés; nouveau lexeme METAIDENT pour les $id
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@880 85f007b7-540e-0410-9357-904b9bb8a0f7
| -rw-r--r-- | parsing/g_tactic.ml4 | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/parsing/g_tactic.ml4 b/parsing/g_tactic.ml4 index b9c4b6a3e1..bcbb32d5bc 100644 --- a/parsing/g_tactic.ml4 +++ b/parsing/g_tactic.ml4 @@ -16,7 +16,14 @@ open Util GEXTEND Gram identarg: - [ [ id = IDENT -> <:ast< ($VAR $id) >> ] ] + [ [ id = IDENT -> <:ast< ($VAR $id) >> + | id = METAIDENT -> <:ast< ($VAR $id) >> ] ] + ; + qualidarg: + [ [ l = Constr.qualid -> <:ast< (QUALIDARG ($LIST l)) >> ] ] + ; + qualidconstarg: + [ [ l = Constr.qualid -> <:ast< (QUALIDCONSTARG ($LIST l)) >> ] ] ; pure_numarg: [ [ n = Prim.number -> n @@ -44,6 +51,12 @@ GEXTEND Gram ne_identarg_list: [ [ l = LIST1 identarg -> l ] ] ; + ne_qualidarg_list: + [ [ l = LIST1 qualidarg -> l ] ] + ; + ne_qualidconstarg_list: + [ [ l = LIST1 qualidarg -> l ] ] + ; ne_num_list: [ [ n = numarg; l = ne_num_list -> n :: l | n = numarg -> [n] ] ] ; @@ -283,8 +296,9 @@ GEXTEND Gram | n = pure_numarg -> n | c = constrarg -> (match c with - Coqast.Node(_,"COMMAND",[Coqast.Nvar(_,s)]) -> <:ast<($VAR $s)>> - |_ -> c) ] ] + | Coqast.Node(_,"COMMAND",[Coqast.Nvar(_,s)]) -> <:ast<($VAR $s)>> + | Coqast.Node(_,"COMMAND",[Coqast.Node(_,"QUALID",[Coqast.Nvar(_,s)])]) -> <:ast<($VAR $s)>> + |_ -> c) ] ] ; simple_tactic: [ [ IDENT "Fix"; n = numarg -> <:ast< (Fix $n) >> |
