1 instantiation of ArrayBuilder
Microsoft.CodeAnalysis.Collections.Package (1)
src\Dependencies\PooledObjects\ArrayBuilder.cs (1)
525pool = new ObjectPool<ArrayBuilder<T>>(() => new ArrayBuilder<T>(pool!), size);
117 references to ArrayBuilder
Microsoft.CodeAnalysis.Collections.Package (117)
Extensions\FixedSizeArrayBuilder.cs (2)
41/// cref="ArrayBuilder{T}.GetInstance(int, T)"/> should be used instead. 89public void AddRange(ArrayBuilder<T> values)
Extensions\ICollectionExtensions.cs (1)
49public static void AddRange<T>(this ICollection<T> collection, ArrayBuilder<T>? values)
Extensions\IEnumerableExtensions.cs (24)
336var result = ArrayBuilder<T>.GetInstance(); 357var builder = ArrayBuilder<TResult>.GetInstance(); 368var builder = ArrayBuilder<TResult>.GetInstance(); 417var builder = ArrayBuilder<TResult>.GetInstance(); 429var builder = ArrayBuilder<TResult>.GetInstance(); 442var builder = ArrayBuilder<TResult>.GetInstance(source.Count); 455var builder = ArrayBuilder<TResult>.GetInstance(source.Count); 467var builder = ArrayBuilder<TResult>.GetInstance(); 479var builder = ArrayBuilder<TResult>.GetInstance(); 494var builder = ArrayBuilder<TResult>.GetInstance(); 509var builder = ArrayBuilder<TResult>.GetInstance(); 521var builder = ArrayBuilder<TResult>.GetInstance();
Extensions\ImmutableArrayExtensions.cs (32)
214var builder = ArrayBuilder<TResult>.GetInstance(); 244var builder = ArrayBuilder<TResult>.GetInstance(); 269var builder = ArrayBuilder<TResult>.GetInstance(); 289var builder = ArrayBuilder<TResult>.GetInstance(); 309var builder = ArrayBuilder<TResult>.GetInstance(); 332var builder = ArrayBuilder<TResult>.GetInstance(); 356var builder = ArrayBuilder<TResult>.GetInstance(); 380var builder = ArrayBuilder<TResult>.GetInstance(); 405var builder = ArrayBuilder<TResult>.GetInstance(); 467var builder = ArrayBuilder<TResult>.GetInstance(); 551ArrayBuilder<T>? builder = null; 571builder = ArrayBuilder<T>.GetInstance(); 589builder = ArrayBuilder<T>.GetInstance(); 766var builder = ArrayBuilder<TValue>.GetInstance(); 863if (existingValueOrArray is ArrayBuilder<T> arrayBuilder) 870arrayBuilder = ArrayBuilder<T>.GetInstance(capacity: 2); 898if (value is ArrayBuilder<TNamespaceOrTypeSymbol> builder) 964var builder = ArrayBuilder<TNamedTypeSymbol>.GetInstance(count); 1287var builder = ArrayBuilder<T>.GetInstance();
OneOrMany.cs (1)
99public void AddRangeTo(ArrayBuilder<T> builder)
src\Dependencies\PooledObjects\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) 395var tmp = ArrayBuilder<U>.GetInstance(Count); 443public void FreeAll(Func<T, ArrayBuilder<T>?> getNested) 489private static readonly ObjectPool<ArrayBuilder<T>> s_poolInstance = CreatePool(); 490public static ArrayBuilder<T> GetInstance() 492var builder = s_poolInstance.Allocate(); 497public static ArrayBuilder<T> GetInstance(int capacity) 499var builder = GetInstance(); 504public static ArrayBuilder<T> GetInstance(int capacity, T fillWithValue) 506var builder = GetInstance(); 517public static ObjectPool<ArrayBuilder<T>> CreatePool() 522public static ObjectPool<ArrayBuilder<T>> CreatePool(int size) 524ObjectPool<ArrayBuilder<T>>? pool = null; 525pool = new ObjectPool<ArrayBuilder<T>>(() => new ArrayBuilder<T>(pool!), size); 564var accumulator = new Dictionary<K, ArrayBuilder<T>>(Count, comparer); 569if (!accumulator.TryGetValue(key, out var bucket)) 571bucket = ArrayBuilder<T>.GetInstance(); 589public void AddRange(ArrayBuilder<T> items) 594public void AddRange<U>(ArrayBuilder<U> items, Func<U, T> selector) 602public void AddRange<U>(ArrayBuilder<U> items) where U : T 607public void AddRange<U>(ArrayBuilder<U> items, int start, int length) where U : T 733var result = ArrayBuilder<S>.GetInstance(Count); 823var builder = ArrayBuilder<TResult>.GetInstance(Count); 861var builder = ArrayBuilder<TResult>.GetInstance(Count); 899var builder = ArrayBuilder<TResult>.GetInstance(Count); 939private static readonly ObjectPool<ArrayBuilder<T>> s_keepLargeInstancesPool = CreatePool(); 941public static PooledDisposer<ArrayBuilder<T>> GetInstance(out ArrayBuilder<T> instance) 944public static PooledDisposer<ArrayBuilder<T>> GetInstance(int capacity, out ArrayBuilder<T> instance) 947return new PooledDisposer<ArrayBuilder<T>>(instance); 950public static PooledDisposer<ArrayBuilder<T>> GetInstance(int capacity, T fillWithValue, out ArrayBuilder<T> instance) 953return new PooledDisposer<ArrayBuilder<T>>(instance); 956public static PooledDisposer<ArrayBuilder<T>> GetInstance(bool discardLargeInstances, out ArrayBuilder<T> instance) 961return new PooledDisposer<ArrayBuilder<T>>(instance, discardLargeInstances);
src\Dependencies\PooledObjects\ArrayBuilder.Enumerator.cs (2)
16private readonly ArrayBuilder<T> _builder; 19public Enumerator(ArrayBuilder<T> builder)
src\Dependencies\PooledObjects\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)
TemporaryArray`1.cs (5)
83private ArrayBuilder<T>? _builder; 101_builder = ArrayBuilder<T>.GetInstance(capacity) 330/// <see cref="ArrayBuilder{T}"/> instance is taken from the shared pool, and all elements currently in inline 338var builder = ArrayBuilder<T>.GetInstance();