checkpoint
[sbp.git] / tests / meta.g
index e7f3524..807f15f 100644 (file)
@@ -9,12 +9,12 @@ Conjuncts   ::=  Sequence
               |  Sequence ^"&~" Elements  /ws
 Elements    ::=  e*/ws
 
-psy         ::= Elements => "ps"
-              | psy !wp ^"/"  !ws e
-              | psy     ^"->"     e /ws
-              | psy "=>" ("[]"|"()"|word|Quoted) /ws => goo
-Sequence    ::= Quoted => "qprod"
-              > psy    => "psx"
+PreSequence ::= Elements => "ps"
+              | PreSequence !wp ^"/"  !ws e
+              | PreSequence     ^"->"     e /ws
+              | (Quoted|word)   ^"::" PreSequence /ws
+              | PreSequence     ^"=>" ("[]"|"()"|word|Quoted) /ws
+Sequence    ::= PreSequence    => "psx"
 
 ec          ::= ~[\-\]\\]
               | escaped
@@ -22,12 +22,13 @@ ec          ::= ~[\-\]\\]
 Range       ::= ec          => "range"
               | ec ^"-" ec
 
-e           ::=  word                          => "nonTerminal"
+e           ::=
+                (Quoted|word) ^":" e
+              >  word                          => "nonTerminal"
               |  Quoted                        => "literal"
               |    ^"()"
               |    ^"{" Sequence "}"       /ws
               |    ^"["  Range* "]"
-
               |  e ^"++"                   /ws -> ~[/]
               |  e ^"+"                    /ws -> ~[+]
               |  e ^"++/" e                /ws