1 instantiation of ArrayBuilder
Microsoft.CodeAnalysis.PooledObjects.Package (1)
ArrayBuilder.cs (1)
539pool = new ObjectPool<ArrayBuilder<T>>(() => new ArrayBuilder<T>(pool!), size);
52 references to ArrayBuilder
Microsoft.CodeAnalysis.PooledObjects.Package (52)
ArrayBuilder.cs (46)
16[DebuggerTypeProxy(typeof(ArrayBuilder<>.DebuggerProxy))] 31private readonly ArrayBuilder<T> _builder; 33public DebuggerProxy(ArrayBuilder<T> builder) 58private readonly ObjectPool<ArrayBuilder<T>>? _pool; 69private ArrayBuilder(ObjectPool<ArrayBuilder<T>> pool) 409var tmp = ArrayBuilder<U>.GetInstance(Count); 457public void FreeAll(Func<T, ArrayBuilder<T>?> getNested) 503private static readonly ObjectPool<ArrayBuilder<T>> s_poolInstance = CreatePool(); 504public static ArrayBuilder<T> GetInstance() 506var builder = s_poolInstance.Allocate(); 511public static ArrayBuilder<T> GetInstance(int capacity) 513var builder = GetInstance(); 518public static ArrayBuilder<T> GetInstance(int capacity, T fillWithValue) 520var builder = GetInstance(); 531public static ObjectPool<ArrayBuilder<T>> CreatePool() 536public static ObjectPool<ArrayBuilder<T>> CreatePool(int size) 538ObjectPool<ArrayBuilder<T>>? pool = null; 539pool = new ObjectPool<ArrayBuilder<T>>(() => new ArrayBuilder<T>(pool!), size); 578var accumulator = new Dictionary<K, ArrayBuilder<T>>(Count, comparer); 583if (!accumulator.TryGetValue(key, out var bucket)) 585bucket = ArrayBuilder<T>.GetInstance(); 603public void AddRange(ArrayBuilder<T> items) 608public void AddRange<U>(ArrayBuilder<U> items, Func<U, T> selector) 616public void AddRange<U>(ArrayBuilder<U> items) where U : T 621public void AddRange<U>(ArrayBuilder<U> items, int start, int length) where U : T 747var result = ArrayBuilder<S>.GetInstance(Count); 837var builder = ArrayBuilder<TResult>.GetInstance(Count); 875var builder = ArrayBuilder<TResult>.GetInstance(Count); 913var builder = ArrayBuilder<TResult>.GetInstance(Count); 953private static readonly ObjectPool<ArrayBuilder<T>> s_keepLargeInstancesPool = CreatePool(); 955public static PooledDisposer<ArrayBuilder<T>> GetInstance(out ArrayBuilder<T> instance) 958public static PooledDisposer<ArrayBuilder<T>> GetInstance(int capacity, out ArrayBuilder<T> instance) 961return new PooledDisposer<ArrayBuilder<T>>(instance); 964public static PooledDisposer<ArrayBuilder<T>> GetInstance(int capacity, T fillWithValue, out ArrayBuilder<T> instance) 967return new PooledDisposer<ArrayBuilder<T>>(instance); 970public static PooledDisposer<ArrayBuilder<T>> GetInstance(bool discardLargeInstances, out ArrayBuilder<T> instance) 975return new PooledDisposer<ArrayBuilder<T>>(instance, discardLargeInstances);
ArrayBuilder.Enumerator.cs (2)
16private readonly ArrayBuilder<T> _builder; 19public Enumerator(ArrayBuilder<T> builder)
ArrayBuilderExtensions.cs (4)
12/// <see cref="ArrayBuilder{T}"/> methods that can't be defined on the type itself. 16public static ImmutableArray<T> ToImmutableOrEmptyAndFree<T>(this ArrayBuilder<T>? builder) 19public static void AddIfNotNull<T>(this ArrayBuilder<T> builder, T? value) 28public static void AddIfNotNull<T>(this ArrayBuilder<T> builder, T? value)