375376377378379380381382383384385
do { if (productiondefinition.getSymbol(pos).isTerminal()) { b2.clear(); b2.addSymbol(productiondefinition.getSymbol(pos)); } else b2 = _firstsets.getFirstSet(productiondefinition.getSymbol(pos)); b.addSymbolList(b2); pos++;
529530531532533534535536537538539
SymbolList reducesymbols = new SymbolList(true); for (int i = 0; i < _elementCount; i++) { if (getItemNext(i).isEmpty()) // for all A=u^ and all symbols in FOLLOW(A) reducesymbols.addSymbol(_lookaheads[i]); } return reducesymbols; } /**
108109110111112113114115116117118
SymbolList firstset = new SymbolList(true); // if the symbol is a terminal symbol if (symbol.isTerminal()) { firstset.addSymbol(symbol); return firstset; } if (visited.contains(symbol)) return firstset;
248249250251252253254255256257258
*/ public SymbolList getSymbols() { SymbolList list = new SymbolList(true); list.addSymbol(_ntsymbol); list.addSymbolList(_definition); if (_precedence!=null) list.addSymbol(_precedence); return list; }
251252253254255256257258259260261
SymbolList list = new SymbolList(true); list.addSymbol(_ntsymbol); list.addSymbolList(_definition); if (_precedence!=null) list.addSymbol(_precedence); return list; } /** * Converts the production to a string
280281282283284285286287288289290
public SymbolList getSymbols() { SymbolList list = new SymbolList(true); for (int i = 0; i < getTokenCount(); i++) list.addSymbol(getToken(i).getSymbol()); return list; } /** * Converts the list to a string