return null;
}
c = (char)i;
+ if (c=='\n') { _row++; _col=0; }
+ else _col++;
}
- if (c=='\n') { _row++; _col=0; }
- else _col++;
if (indenting) {
if (c==' ') { indentation++; return done(c); }
if (c=='\n') { indentation = 0; if (blank) return nextc(numstates, resets); blank = true; waiting = true; waitingChar='\n'; return '\n'; }
// Grammar //////////////////////////////////////////////////////////////////////////////
- public static class Grammar extends MetaGrammar {
+ public static class Grammar extends ReflectiveGrammar {
private int anon = 0;
- private final Element ws = Repeat.maximal0(getNonTerminal("w"));
- public Grammar() { dropAll.add(ws); }
+ private final Element ws = Sequence.maximal0(getNonTerminal("w"));
+ public Grammar(Class c) { super(c); dropAll.add(ws); }
public Object walk(Tree<String> tree) {
String head = tree.head();
if (tree.numChildren()==0) return super.walk(tree);