Exemplo n.º 1
0
        internal void Merge(SparseLinkedList <T> list)
        {
            Lock();
            list.Lock();

            Version++;
            list.Version++;

            MergeImpl(list);

            VerifyStructure();
            list.VerifyStructure();

            Unlock();
            list.Unlock();
        }
Exemplo n.º 2
0
        internal void Swap(int index, SparseLinkedList <T> list)
        {
            Lock();
            list.Lock();

            VerifyIndex(index);

            Version++;
            list.Version++;

            SwapImpl(list);

            VerifyStructure();
            list.VerifyStructure();

            Unlock();
            list.Unlock();
        }
Exemplo n.º 3
0
        internal void SplitAt(int index, SparseLinkedList <T> targetList)
        {
            Lock();
            targetList.Lock();

            VerifyIndex(index, true);

            Version++;
            targetList.Version++;

            SplitAtImpl(index, targetList);

            VerifyStructure();
            targetList.VerifyStructure();

            Unlock();
            targetList.Unlock();
        }