2 instantiations of ArrayBuilder
Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost (2)
src\Compilers\Core\Portable\InternalUtilities\SetWithInsertionOrder.cs (1)
28_elements = new ArrayBuilder<T>();
src\Dependencies\PooledObjects\ArrayBuilder.cs (1)
540pool = new ObjectPool<ArrayBuilder<T>>(() => new ArrayBuilder<T>(pool!), size);
112 references to ArrayBuilder
Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost (112)
src\Compilers\Core\Portable\FileSystem\PathUtilities.cs (2)
879var resolvedParts = ArrayBuilder<string>.GetInstance();
src\Compilers\Core\Portable\InternalUtilities\EnumField.cs (1)
39internal static EnumField FindValue(ArrayBuilder<EnumField> sortedFields, ulong value)
src\Compilers\Core\Portable\InternalUtilities\FileLockCheck.cs (2)
201var lockInfos = ArrayBuilder<(int, string)>.GetInstance((int)pnProcInfo);
src\Compilers\Core\Portable\InternalUtilities\SetWithInsertionOrder.cs (1)
21private ArrayBuilder<T>? _elements = null;
src\Dependencies\Collections\Extensions\FixedSizeArrayBuilder.cs (2)
43/// cref="ArrayBuilder{T}.GetInstance(int, T)"/> should be used instead. 91public void AddRange(ArrayBuilder<T> values)
src\Dependencies\Collections\Extensions\ICollectionExtensions.cs (1)
49public static void AddRange<T>(this ICollection<T> collection, ArrayBuilder<T>? values)
src\Dependencies\Collections\Extensions\IEnumerableExtensions.cs (21)
347[NotNullWhen(true)] out ArrayBuilder<TResult>? builder) 366builder = ArrayBuilder<TResult>.GetInstance(count); 372builder = ArrayBuilder<TResult>.GetInstance(); 378if (!TryGetBuilder<T, T>(values, useCountForBuilder: false, out var builder)) 392if (!TryGetBuilder<T, T>(values, useCountForBuilder: false, out var result)) 409if (!TryGetBuilder<TSource, TResult>(source, useCountForBuilder: true, out var builder)) 419if (!TryGetBuilder<TItem, TResult>(source, useCountForBuilder: false, out var builder)) 433if (!TryGetBuilder<TSource, TResult>(source, useCountForBuilder: true, out var builder)) 451var builder = ArrayBuilder<TResult>.GetInstance(); 487if (!TryGetBuilder<TSource, TResult>(source, useCountForBuilder: false, out var builder)) 498if (!TryGetBuilder<TItem, TResult>(source, useCountForBuilder: false, out var builder)) 513var builder = ArrayBuilder<TResult>.GetInstance(source.Count); 526var builder = ArrayBuilder<TResult>.GetInstance(source.Count); 535if (!TryGetBuilder<TSource, TResult>(source, useCountForBuilder: false, out var builder)) 549if (!TryGetBuilder<TItem, TResult>(source, useCountForBuilder: true, out var builder)) 563if (!TryGetBuilder<TItem, TResult>(source, useCountForBuilder: true, out var builder)) 577if (!TryGetBuilder<TItem, TResult>(source, useCountForBuilder: true, out var builder)) 588if (!TryGetBuilder<TItem, TResult>(source, useCountForBuilder: false, out var builder))
src\Dependencies\Collections\Extensions\ImmutableArrayExtensions.cs (32)
203var builder = ArrayBuilder<TResult>.GetInstance(); 229var builder = ArrayBuilder<TResult>.GetInstance(); 252var builder = ArrayBuilder<TResult>.GetInstance(); 272var builder = ArrayBuilder<TResult>.GetInstance(); 292var builder = ArrayBuilder<TResult>.GetInstance(); 313var builder = ArrayBuilder<TResult>.GetInstance(); 337var builder = ArrayBuilder<TResult>.GetInstance(); 361var builder = ArrayBuilder<TResult>.GetInstance(); 386var builder = ArrayBuilder<TResult>.GetInstance(); 438var builder = ArrayBuilder<TResult>.GetInstance(); 509ArrayBuilder<T>? builder = null; 529builder = ArrayBuilder<T>.GetInstance(); 547builder = ArrayBuilder<T>.GetInstance(); 707var builder = ArrayBuilder<TValue>.GetInstance(); 804if (existingValueOrArray is ArrayBuilder<T> arrayBuilder) 811arrayBuilder = ArrayBuilder<T>.GetInstance(capacity: 2); 839if (value is ArrayBuilder<TNamespaceOrTypeSymbol> builder) 905var builder = ArrayBuilder<TNamedTypeSymbol>.GetInstance(count); 1198var builder = ArrayBuilder<T>.GetInstance();
src\Dependencies\Collections\OneOrMany.cs (1)
99public void AddRangeTo(ArrayBuilder<T> builder)
src\Dependencies\Collections\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();
src\Dependencies\PooledObjects\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);
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)