public DynamicSymbolsContainer(SymbolCollection <ISymbol> symbols) { if (symbols == null) { throw new ArgumentNullException("symbols"); } this._symbols = symbols; foreach (DynamicSymbol symbol in symbols) { this._normalizedDict.Add(symbol.NormalizedName, symbol); } }
protected virtual ISymbolCollection OnCreateArrayElementInstances(ISymbol parentInstance, IArrayType arrayType) { ISymbolCollection symbols = null; if (this.nonCachedArrayElements) { symbols = new ArrayElementSymbolCollection(parentInstance, arrayType, this); } else { symbols = new SymbolCollection(InstanceCollectionMode.Names); foreach (int[] numArray in new ArrayIndexIterator(arrayType)) { ISymbol item = this.CreateArrayElement(numArray, parentInstance, arrayType); symbols.Add(item); } } return(symbols); }