1 instantiation of PooledHashSet
Microsoft.CodeAnalysis.Threading.Package (1)
src\Dependencies\PooledObjects\PooledHashSet.cs (1)
40
pool = new ObjectPool<PooledHashSet<T>>(() => new
PooledHashSet
<T>(pool!, equalityComparer), 128);
19 references to PooledHashSet
Microsoft.CodeAnalysis.Threading.Package (19)
src\Dependencies\Collections\Extensions\ImmutableArrayExtensions.cs (4)
1061
var
set =
PooledHashSet
<T>.GetInstance();
1397
var
set =
PooledHashSet
<TElement>.GetInstance();
src\Dependencies\PooledObjects\ArrayBuilder.cs (4)
691
var
set =
PooledHashSet
<T>.GetInstance();
734
var
set =
PooledHashSet
<S>.GetInstance();
src\Dependencies\PooledObjects\PooledHashSet.cs (11)
19
private readonly ObjectPool<
PooledHashSet
<T>> _pool;
21
private PooledHashSet(ObjectPool<
PooledHashSet
<T>> pool, IEqualityComparer<T> equalityComparer) :
34
private static readonly ObjectPool<
PooledHashSet
<T>> s_poolInstance = CreatePool(EqualityComparer<T>.Default);
37
public static ObjectPool<
PooledHashSet
<T>> CreatePool(IEqualityComparer<T> equalityComparer)
39
ObjectPool<
PooledHashSet
<T>>? pool = null;
40
pool = new ObjectPool<
PooledHashSet
<T>>(() => new PooledHashSet<T>(pool!, equalityComparer), 128);
44
public static
PooledHashSet
<T> GetInstance()
46
var
instance = s_poolInstance.Allocate();
52
public static PooledDisposer<
PooledHashSet
<T>> GetInstance(out
PooledHashSet
<T> instance)
55
return new PooledDisposer<
PooledHashSet
<T>>(instance);