1 instantiation of ArrayBuilder
Microsoft.CodeAnalysis.PooledObjects.Package (1)
ArrayBuilder.cs (1)
540pool = new ObjectPool<ArrayBuilder<T>>(() => new ArrayBuilder<T>(pool!), size);
44 references to ArrayBuilder
Microsoft.CodeAnalysis.PooledObjects.Package (44)
ArrayBuilder.cs (38)
17[DebuggerTypeProxy(typeof(ArrayBuilder<>.DebuggerProxy))] 32private readonly ArrayBuilder<T> _builder; 34public DebuggerProxy(ArrayBuilder<T> builder) 59private readonly ObjectPool<ArrayBuilder<T>>? _pool; 70private ArrayBuilder(ObjectPool<ArrayBuilder<T>> pool) 458public void FreeAll(Func<T, ArrayBuilder<T>?> getNested) 504private static readonly ObjectPool<ArrayBuilder<T>> s_poolInstance = CreatePool(); 505public static ArrayBuilder<T> GetInstance() 507var builder = s_poolInstance.Allocate(); 512public static ArrayBuilder<T> GetInstance(int capacity) 514var builder = GetInstance(); 519public static ArrayBuilder<T> GetInstance(int capacity, T fillWithValue) 521var builder = GetInstance(); 532public static ObjectPool<ArrayBuilder<T>> CreatePool() 537public static ObjectPool<ArrayBuilder<T>> CreatePool(int size) 539ObjectPool<ArrayBuilder<T>>? pool = null; 540pool = new ObjectPool<ArrayBuilder<T>>(() => new ArrayBuilder<T>(pool!), size); 579var accumulator = new Dictionary<K, ArrayBuilder<T>>(Count, comparer); 584if (!accumulator.TryGetValue(key, out var bucket)) 586bucket = ArrayBuilder<T>.GetInstance(); 604public void AddRange(ArrayBuilder<T> items) 609public void AddRange<U>(ArrayBuilder<U> items, Func<U, T> selector) 617public void AddRange<U>(ArrayBuilder<U> items) where U : T 622public void AddRange<U>(ArrayBuilder<U> items, int start, int length) where U : T 756var result = ArrayBuilder<S>.GetInstance(Count); 956private static readonly ObjectPool<ArrayBuilder<T>> s_keepLargeInstancesPool = CreatePool(); 958public static PooledDisposer<ArrayBuilder<T>> GetInstance(out ArrayBuilder<T> instance) 961public static PooledDisposer<ArrayBuilder<T>> GetInstance(int capacity, out ArrayBuilder<T> instance) 964return new PooledDisposer<ArrayBuilder<T>>(instance); 967public static PooledDisposer<ArrayBuilder<T>> GetInstance(int capacity, T fillWithValue, out ArrayBuilder<T> instance) 970return new PooledDisposer<ArrayBuilder<T>>(instance); 973public static PooledDisposer<ArrayBuilder<T>> GetInstance(bool discardLargeInstances, out ArrayBuilder<T> instance) 978return 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)