1 instantiation of PooledStringBuilder
Microsoft.CodeAnalysis.InteractiveHost (1)
src\Dependencies\PooledObjects\PooledStringBuilder.cs (1)
88
pool = new ObjectPool<PooledStringBuilder>(() => new
PooledStringBuilder
(pool!), size);
14 references to PooledStringBuilder
Microsoft.CodeAnalysis.InteractiveHost (14)
src\Dependencies\PooledObjects\PooledStringBuilder.cs (14)
26
private readonly ObjectPool<
PooledStringBuilder
> _pool;
28
private PooledStringBuilder(ObjectPool<
PooledStringBuilder
> pool)
78
private static readonly ObjectPool<
PooledStringBuilder
> s_poolInstance = CreatePool();
85
public static ObjectPool<
PooledStringBuilder
> CreatePool(int size = 32)
87
ObjectPool<
PooledStringBuilder
>? pool = null;
88
pool = new ObjectPool<
PooledStringBuilder
>(() => new PooledStringBuilder(pool!), size);
92
public static
PooledStringBuilder
GetInstance()
94
var
builder = s_poolInstance.Allocate();
99
public static implicit operator StringBuilder(
PooledStringBuilder
obj)
105
private static readonly ObjectPool<
PooledStringBuilder
> s_keepLargeInstancesPool = CreatePool();
107
public static PooledDisposer<
PooledStringBuilder
> GetInstance(out StringBuilder instance)
110
public static PooledDisposer<
PooledStringBuilder
> GetInstance(bool discardLargeInstances, out StringBuilder instance)
114
var
pooledInstance = discardLargeInstances ? GetInstance() : s_keepLargeInstancesPool.Allocate();
116
return new PooledDisposer<
PooledStringBuilder
>(pooledInstance, discardLargeInstances);