internal void Insert(int index, StackItem item) { if (index > innerList.Count) { throw new InvalidOperationException(); } innerList.Insert(innerList.Count - index, item); referenceCounter.AddStackReference(item); }
public Slot(StackItem[] items, ReferenceCounter referenceCounter) { this.referenceCounter = referenceCounter; this.items = items; foreach (StackItem item in items) { referenceCounter.AddStackReference(item); } }
public StackItem this[int index] { get { return(items[index]); } internal set { referenceCounter.RemoveStackReference(items[index]); items[index] = value; referenceCounter.AddStackReference(value); } }