1
0

Adding support for .NET 8.0 LTS, renaming private fields to start with underscore

This commit is contained in:
2023-12-29 01:58:40 +01:00
parent 8bd511a936
commit 99d3f7758a
59 changed files with 922 additions and 871 deletions

View File

@@ -12,10 +12,10 @@ namespace System.Collections.Generic
{
#region Fields
private readonly Queue<T> queue;
private readonly Queue<T> _queue;
private TaskCompletionSource<bool> dequeueTcs = new();
private TaskCompletionSource<bool> availableTcs = new();
private TaskCompletionSource<bool> _dequeueTcs = new();
private TaskCompletionSource<bool> _availableTcs = new();
#endregion Fields
@@ -27,7 +27,7 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public AsyncQueue()
{
queue = new Queue<T>();
_queue = new Queue<T>();
}
/// <summary>
@@ -40,7 +40,7 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public AsyncQueue(IEnumerable<T> collection)
{
queue = new Queue<T>();
_queue = new Queue<T>();
Enqueue(collection);
}
@@ -52,7 +52,7 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public AsyncQueue(int capacity)
{
queue = new Queue<T>(capacity);
_queue = new Queue<T>(capacity);
}
#endregion Constructors
@@ -67,9 +67,9 @@ namespace System.Collections.Generic
{
get
{
lock (queue)
lock (_queue)
{
return queue.Count;
return _queue.Count;
}
}
}
@@ -84,9 +84,9 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public void Clear()
{
lock (queue)
lock (_queue)
{
queue.Clear();
_queue.Clear();
}
}
@@ -98,9 +98,9 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public bool Contains(T item)
{
lock (queue)
lock (_queue)
{
return queue.Contains(item);
return _queue.Contains(item);
}
}
@@ -115,9 +115,9 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public void CopyTo(T[] array, int arrayIndex)
{
lock (queue)
lock (_queue)
{
queue.CopyTo(array, arrayIndex);
_queue.CopyTo(array, arrayIndex);
}
}
@@ -129,9 +129,9 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public T Dequeue()
{
lock (queue)
lock (_queue)
{
return queue.Dequeue();
return _queue.Dequeue();
}
}
@@ -141,11 +141,11 @@ namespace System.Collections.Generic
/// <param name="item">The object to add to the <see cref="AsyncQueue{T}"/>. The value can be null for reference types.</param>
public void Enqueue(T item)
{
lock (queue)
lock (_queue)
{
queue.Enqueue(item);
SetToken(dequeueTcs);
SetToken(availableTcs);
_queue.Enqueue(item);
SetToken(_dequeueTcs);
SetToken(_availableTcs);
}
}
@@ -157,9 +157,9 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public T Peek()
{
lock (queue)
lock (_queue)
{
return queue.Peek();
return _queue.Peek();
}
}
@@ -170,9 +170,9 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public T[] ToArray()
{
lock (queue)
lock (_queue)
{
return queue.ToArray();
return _queue.ToArray();
}
}
@@ -182,9 +182,9 @@ namespace System.Collections.Generic
[ExcludeFromCodeCoverage]
public void TrimExcess()
{
lock (queue)
lock (_queue)
{
queue.TrimExcess();
_queue.TrimExcess();
}
}
@@ -203,21 +203,21 @@ namespace System.Collections.Generic
while (true)
{
TaskCompletionSource<bool> internalDequeueTcs;
lock (queue)
lock (_queue)
{
if (queue.Count > 0)
if (_queue.Count > 0)
{
int count = queue.Count;
int count = _queue.Count;
if (maxCount > 0 && count > maxCount)
count = maxCount;
var items = new T[count];
for (int i = 0; i < count; i++)
items[i] = queue.Dequeue();
items[i] = _queue.Dequeue();
return items;
}
internalDequeueTcs = ResetToken(ref dequeueTcs);
internalDequeueTcs = ResetToken(ref _dequeueTcs);
}
await WaitAsync(internalDequeueTcs, cancellationToken).ConfigureAwait(false);
@@ -238,17 +238,17 @@ namespace System.Collections.Generic
while (true)
{
TaskCompletionSource<bool> internalDequeueTcs;
lock (queue)
lock (_queue)
{
if (count <= queue.Count)
if (count <= _queue.Count)
{
var items = new T[count];
for (int i = 0; i < count; i++)
items[i] = queue.Dequeue();
items[i] = _queue.Dequeue();
return items;
}
internalDequeueTcs = ResetToken(ref dequeueTcs);
internalDequeueTcs = ResetToken(ref _dequeueTcs);
}
await WaitAsync(internalDequeueTcs, cancellationToken).ConfigureAwait(false);
@@ -265,12 +265,12 @@ namespace System.Collections.Generic
while (true)
{
TaskCompletionSource<bool> internalDequeueTcs;
lock (queue)
lock (_queue)
{
if (queue.Count > 0)
return queue.Dequeue();
if (_queue.Count > 0)
return _queue.Dequeue();
internalDequeueTcs = ResetToken(ref dequeueTcs);
internalDequeueTcs = ResetToken(ref _dequeueTcs);
}
await WaitAsync(internalDequeueTcs, cancellationToken).ConfigureAwait(false);
@@ -285,12 +285,12 @@ namespace System.Collections.Generic
public async Task WaitAsync(CancellationToken cancellationToken = default)
{
TaskCompletionSource<bool> internalAvailableTcs;
lock (queue)
lock (_queue)
{
if (queue.Count > 0)
if (_queue.Count > 0)
return;
internalAvailableTcs = ResetToken(ref availableTcs);
internalAvailableTcs = ResetToken(ref _availableTcs);
}
await WaitAsync(internalAvailableTcs, cancellationToken).ConfigureAwait(false);
@@ -347,10 +347,10 @@ namespace System.Collections.Generic
/// <returns>true if item is successfully removed; otherwise, false. This method also returns false if item was not found in the <see cref="AsyncQueue{T}"/>.</returns>
public bool Remove(T item)
{
lock (queue)
lock (_queue)
{
var copy = new Queue<T>(queue);
queue.Clear();
var copy = new Queue<T>(_queue);
_queue.Clear();
bool found = false;
int count = copy.Count;
@@ -359,7 +359,7 @@ namespace System.Collections.Generic
var element = copy.Dequeue();
if (found)
{
queue.Enqueue(element);
_queue.Enqueue(element);
continue;
}
@@ -369,7 +369,7 @@ namespace System.Collections.Generic
continue;
}
queue.Enqueue(element);
_queue.Enqueue(element);
}
return found;
@@ -382,19 +382,19 @@ namespace System.Collections.Generic
/// <param name="collection">The objects to add to the <see cref="AsyncQueue{T}"/>.</param>
public void Enqueue(IEnumerable<T> collection)
{
lock (queue)
lock (_queue)
{
bool hasElements = false;
foreach (var element in collection)
{
hasElements = true;
queue.Enqueue(element);
_queue.Enqueue(element);
}
if (hasElements)
{
SetToken(dequeueTcs);
SetToken(availableTcs);
SetToken(_dequeueTcs);
SetToken(_availableTcs);
}
}
}