else if ("=>".equals(head)) { PreSequence p = (PreSequence)walk(tree, 0); p.tag = string(tree.child(1)); return p; }
else if ("/".equals(head)) return ((PreSequence)walk(tree, 0)).sparse((Element)walk(tree, 1));
else if ("ps".equals(head)) return new PreSequence((Element[])walk(tree, 0));
- else if ("ps2".equals(head)) {
+ else if ("ps".equals(head)) return new PreSequence((Element[])walk(tree, 0));
+ else if ("qprod".equals(head)) {
+ String s = string(tree.child(0));
+ return new PreSequence(new Element[] { string(s) }, s, new boolean[] { true });
+ } else if ("ps2".equals(head)) {
Object[] o1 = (Object[])walk(tree, 0);
String s = string(tree.child(1));
Object[] o2 = (Object[])walk(tree, 2);
+
+
+
+
// DO NOT EDIT STUFF BELOW: IT IS AUTOMATICALLY GENERATED
new Tree(null, "gram", new Tree[] { new Tree(null, null, new Tree[] { }),
new Tree(null, "grammar", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "s", new Tree[] { })}),
new Tree(null, "!::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
new Tree(null, "s", new Tree[] { })}),
new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "**", new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { })})})})})})})})}),
+ new Tree(null, "!::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
+ new Tree(null, "p", new Tree[] { })}),
+ new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "++", new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { })})})})})})})})}),
new Tree(null, "::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "g", new Tree[] { }),
new Tree(null, "r", new Tree[] { }),
new Tree(null, "a", new Tree[] { }),
new Tree(null, "2", new Tree[] { })})})})})}),
new Tree(null, "::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
new Tree(null, "s", new Tree[] { }),
- new Tree(null, "x", new Tree[] { })}),
+ new Tree(null, "y", new Tree[] { })}),
new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})})})}),
- new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})}),
+ new Tree(null, "s", new Tree[] { })})})})}),
+ new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { })})}),
+ new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
+ new Tree(null, "p", new Tree[] { })})})}),
new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { })}),
+ new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { })})}),
+ new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})})})})})}),
+ new Tree(null, "::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { }),
+ new Tree(null, "x", new Tree[] { })}),
+ new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { }),
+ new Tree(null, "y", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "?", new Tree[] { }),
+ new Tree(null, "=", new Tree[] { }),
+ new Tree(null, ">", new Tree[] { })}),
new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})})}),
new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})})})})}),
+ new Tree(null, "s", new Tree[] { })})})}),
+ new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { }),
+ new Tree(null, "y", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "!", new Tree[] { }),
+ new Tree(null, "=", new Tree[] { }),
+ new Tree(null, ">", new Tree[] { })}),
+ new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})})}),
+ new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { })})})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { }),
+ new Tree(null, "y", new Tree[] { })})})})})})})}),
new Tree(null, "::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "s", new Tree[] { }),
new Tree(null, "e", new Tree[] { }),
new Tree(null, "q", new Tree[] { }),
new Tree(null, "n", new Tree[] { }),
new Tree(null, "c", new Tree[] { }),
new Tree(null, "e", new Tree[] { })}),
- new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
+ new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "=>", new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "q", new Tree[] { }),
+ new Tree(null, "u", new Tree[] { }),
+ new Tree(null, "o", new Tree[] { }),
+ new Tree(null, "t", new Tree[] { }),
+ new Tree(null, "e", new Tree[] { }),
+ new Tree(null, "d", new Tree[] { })})})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "q", new Tree[] { }),
+ new Tree(null, "p", new Tree[] { }),
+ new Tree(null, "r", new Tree[] { }),
+ new Tree(null, "o", new Tree[] { }),
+ new Tree(null, "d", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
new Tree(null, "s", new Tree[] { }),
new Tree(null, "x", new Tree[] { })})})})}),
new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "p", new Tree[] { }),
new Tree(null, "g", new Tree[] { }),
new Tree(null, "e", new Tree[] { })})})}),
new Tree(null, "literal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "]", new Tree[] { })})})})}),
- new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "(", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})}),
+ new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "(", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "+", new Tree[] { }),
+ new Tree(null, "+", new Tree[] { })}),
+ new Tree(null, null, new Tree[] { })}),
new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})}),
+ new Tree(null, "s", new Tree[] { })})})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "+", new Tree[] { })}),
+ new Tree(null, null, new Tree[] { })}),
+ new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { })})})})})})})})}),
+ new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "(", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "+", new Tree[] { }),
+ new Tree(null, "+", new Tree[] { }),
+ new Tree(null, "/", new Tree[] { })}),
+ new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})})}),
+ new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { })})})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "+", new Tree[] { }),
+ new Tree(null, "/", new Tree[] { })}),
+ new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})})}),
+ new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { })})})})})})})})}),
+ new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "(", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
new Tree(null, null, new Tree[] { new Tree(null, "*", new Tree[] { }),
new Tree(null, "*", new Tree[] { })}),
- new Tree(null, null, new Tree[] { })})}),
- new Tree(null, null, new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})}),
+ new Tree(null, null, new Tree[] { })}),
new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})}),
+ new Tree(null, "s", new Tree[] { })})})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
new Tree(null, null, new Tree[] { new Tree(null, "*", new Tree[] { })}),
- new Tree(null, null, new Tree[] { })})})})})})}),
- new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { })}),
+ new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { })})})})})})})})}),
+ new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "(", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
new Tree(null, null, new Tree[] { new Tree(null, "*", new Tree[] { }),
+ new Tree(null, "*", new Tree[] { }),
new Tree(null, "/", new Tree[] { })}),
new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})})}),
new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})}),
- new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "(", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})}),
- new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})}),
- new Tree(null, null, new Tree[] { new Tree(null, "+", new Tree[] { }),
- new Tree(null, "+", new Tree[] { })}),
- new Tree(null, null, new Tree[] { })})}),
- new Tree(null, null, new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})}),
- new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})}),
- new Tree(null, null, new Tree[] { new Tree(null, "+", new Tree[] { })}),
- new Tree(null, null, new Tree[] { })})})})})})}),
- new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
- new Tree(null, null, new Tree[] { new Tree(null, "+", new Tree[] { }),
+ new Tree(null, "s", new Tree[] { })})})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, "*", new Tree[] { }),
new Tree(null, "/", new Tree[] { })}),
new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})})}),
new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
- new Tree(null, "s", new Tree[] { })})})}),
+ new Tree(null, "s", new Tree[] { })})})})})})})})}),
new Tree(null, "/", new Tree[] { new Tree(null, "ps2", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "e", new Tree[] { })})})}),
new Tree(null, null, new Tree[] { new Tree(null, "?", new Tree[] { })}),
new Tree(null, null, new Tree[] { })}),
new Tree(null, "nonTerminal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
new Tree(null, "s", new Tree[] { })})})})})})}),
new Tree(null, "!::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { })}),
- new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "literal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, " ", new Tree[] { })})})})}),
+ new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "qprod", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, " ", new Tree[] { })})}),
new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "literal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "/", new Tree[] { }),
new Tree(null, "/", new Tree[] { })})}),
new Tree(null, "(", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "*", new Tree[] { new Tree(null, "[~", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "range", new Tree[] { new Tree(null, "\n", new Tree[] { })})})})})})})})})}),
new Tree(null, "literal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "\n", new Tree[] { })})})})}),
- new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "literal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "\n", new Tree[] { })})})})}),
- new Tree(null, "ps", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "literal", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "\r", new Tree[] { })})})})})})})}),
+ new Tree(null, "qprod", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "\n", new Tree[] { })})}),
+ new Tree(null, "qprod", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "\r", new Tree[] { })})})})})}),
new Tree(null, "::=", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "w", new Tree[] { }),
new Tree(null, "o", new Tree[] { }),
new Tree(null, "r", new Tree[] { }),
+
+
+
+