public TokenInterProductionBuilder(TokenInterEntry tokenRule) { _collection = null; _entry0 = tokenRule; _entry1 = null; _entry2 = null; _entry3 = null; _entryCount = 1; }
internal TokenInterEntry[] CreateArray() { var entryArray = new TokenInterEntry[_entryCount]; for (var i = 0; i < _entryCount; i++) { entryArray[i] = this[i]; } return(entryArray); }
private void Add(TokenInterEntry parserEntry) { if (_entryCount >= Capacity) { _collection.Add(parserEntry); _entryCount++; return; } if (_entryCount == 0) { _entry0 = parserEntry; } else if (_entryCount == 1) { _entry1 = parserEntry; } else if (_entryCount == 2) { _entry2 = parserEntry; } else if (_entryCount == 3) { _entry3 = parserEntry; } _entryCount++; if (_entryCount == Capacity) { _collection = new List <TokenInterEntry>(Capacity); for (var i = 0; i < _entryCount; i++) { _collection.Add(this[i]); } } }