3 writes to _array
Microsoft.CodeAnalysis.Workspaces (3)
22 references to _array
Microsoft.CodeAnalysis.Workspaces (22)
Utilities\Deque.cs (22)
40return _array[(_head + index) % _array.Length];
49return _array[_head];
58return _array[(_head + _count - 1) % _array.Length];
65_array[(_head + _count) % _array.Length] = item;
72var item = _array[_head];
74_array[_head] = default!;
75_head = (_head + 1) % _array.Length;
84var index = (_head + _count) % _array.Length;
85var item = _array[index];
87_array[index] = default!;
93if (_array.Length >= min)
96var newCapacity = Math.Max(4, _array.Length * 2);
103if (_head + _count <= _array.Length)
105Array.Copy(_array, _head, newArray, 0, _count);
109var firstPart = _array.Length - _head;
110Array.Copy(_array, _head, newArray, 0, firstPart);
111Array.Copy(_array, 0, newArray, firstPart, _count - firstPart);
122if (_array.Length > 0)
123ArrayPool<T>.Shared.Return(_array, clearArray: MustClearReferences());