while (t != null && t != node.getLastToken()) { out.println(t.image);
if (child == null) t = node.getFirstToken(); else if (child.getLastToken() != node.getLastToken()) t = child.getLastToken().next; else t = null;  while (t != null) { emit(t.image); if (t == node.getLastToken()) break;
	public void generateDefault(SimpleNode node) {		int numChildren = node.jjtGetNumChildren();		int numTokens = node.getNumTokens();		if (numChildren == 0 && numTokens == 0)			return;		// If there are no child nodes, just emit all of		// the tokens.		if (numChildren == 0) {			Token t = node.getFirstToken();			while (t != node.getLastToken()) {				out.println(t.image);				t = t.next;			}			return;		}		// For each child, emit tokens preceeding that		// child not covered by previous children,		// then visit the child.		Token t = node.getFirstToken();		int childNum = 0;		do {			SimpleNode child = (SimpleNode) node.jjtGetChild(childNum);			while (t != null && t != child.getFirstToken()) {				out.println(t.image);				t = t.next;			}			visit(child);			if (child.getNumTokens() > 0)				t = child.getLastToken().next;			++childNum;		} while (childNum < numChildren);		// Emit rest of tokens		while (t != null && t != node.getLastToken()) {			out.println(t.image);			t = t.next;		}	}