ImmutableArray Class

Definition

Provides methods for creating an array that is immutable; meaning it cannot be changed once it is created.

NuGet package: System.Collections.Immutable (about immutable collections and how to install)

C#
public static class ImmutableArray
Inheritance
ImmutableArray

Methods

BinarySearch<T>(ImmutableArray<T>, Int32, Int32, T, IComparer<T>)

Searches a sorted immutable array for a specified element and returns the zero-based index of the element.

BinarySearch<T>(ImmutableArray<T>, Int32, Int32, T)

Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found.

BinarySearch<T>(ImmutableArray<T>, T, IComparer<T>)

Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found.

BinarySearch<T>(ImmutableArray<T>, T)

Searches the sorted immutable array for a specified element using the default comparer and returns the zero-based index of the element, if it's found.

Create<T>()

Creates an empty immutable array.

Create<T>(ImmutableArray<T>, Int32, Int32)

Creates an immutable array with the specified objects from another immutable array.

Create<T>(ReadOnlySpan<T>)

Creates an ImmutableArray<T> with the specified elements.

Create<T>(Span<T>)

Creates an ImmutableArray<T> with the specified elements.

Create<T>(T, T, T, T)

Creates an immutable array that contains the specified objects.

Create<T>(T, T, T)

Creates an immutable array that contains the specified objects.

Create<T>(T, T)

Creates an immutable array that contains the specified objects.

Create<T>(T)

Creates an immutable array that contains the specified object.

Create<T>(T[], Int32, Int32)

Creates an immutable array with specified objects from another array.

Create<T>(T[])

Creates an immutable array from the specified array of objects.

CreateBuilder<T>()

Creates a mutable array that can be converted to an ImmutableArray without allocating new memory.

CreateBuilder<T>(Int32)

Creates a mutable array that can be converted to an ImmutableArray without allocating new memory.

CreateRange<T>(IEnumerable<T>)

Creates a new ImmutableArray<T> populated with the specified items.

CreateRange<TSource,TArg,TResult>(ImmutableArray<TSource>, Func<TSource,TArg,TResult>, TArg)

Initializes a new instance of the ImmutableArray<T> struct.

CreateRange<TSource,TArg,TResult>(ImmutableArray<TSource>, Int32, Int32, Func<TSource,TArg,TResult>, TArg)

Initializes a new instance of the ImmutableArray<T> struct.

CreateRange<TSource,TResult>(ImmutableArray<TSource>, Func<TSource,TResult>)

Initializes a new instance of the ImmutableArray<T> struct.

CreateRange<TSource,TResult>(ImmutableArray<TSource>, Int32, Int32, Func<TSource,TResult>)

Initializes a new instance of the ImmutableArray<T> struct.

ToImmutableArray<T>(ReadOnlySpan<T>)

Produce an immutable array of contents from specified elements.

ToImmutableArray<T>(Span<T>)

Converts the span to an immutable array.

ToImmutableArray<TSource>(IEnumerable<TSource>)

Creates an immutable array from the specified collection.

ToImmutableArray<TSource>(ImmutableArray<TSource>.Builder)

Creates an immutable array from the current contents of the builder's array.

Applies to

Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8 (package-provided), 8, 9 (package-provided), 9, 10 (package-provided), 10
.NET Standard 2.0 (package-provided)
UWP 10.0

Thread Safety

This type is thread safe.