Пример #1
0
        public SlotId Add(T value)
        {
            if ((int)this._freeHead == (int)ushort.MaxValue)
            {
                return(new SlotId((uint)ushort.MaxValue));
            }
            uint freeHead = this._freeHead;

            SlotVector <T> .ItemPair itemPair = this._array[freeHead];
            if (this._freeHead >= this._usedSpaceLength)
            {
                this._usedSpaceLength = this._freeHead + 1U;
            }
            this._freeHead        = itemPair.Id.Index;
            this._array[freeHead] = new SlotVector <T> .ItemPair(value, itemPair.Id.ToActive(freeHead));

            ++this._count;
            return(this._array[freeHead].Id);
        }
Пример #2
0
 void IDisposable.Dispose()
 {
     this._slotVector = (SlotVector <T>)null;
 }
Пример #3
0
 public Enumerator(SlotVector <T> slotVector)
 {
     this._slotVector = slotVector;
 }