TypedAllocator.expandArray

bool expandArray(T)(ref T[] array, size_t delta)

Grows array by appending delta more elements. The needed memory is allocated using the same allocator that was used for the array type. The extra elements added are either default-initialized, filled with copies of init, or initialized with values fetched from range.

Parameters

Telement type of the array being created
arraya reference to the array being grown
deltanumber of elements to add (upon success the new length of array is array.length + delta)
initelement used for filling the array
rangerange used for initializing the array elements

Returns

true upon success, false if memory could not be allocated. In the

latter case array is left unaffected.

Throws

The first two overloads throw only if the used allocator's primitives do.

The overloads that involve copy initialization deallocate memory and propagate the exception if the copy operation throws.

bool expandArray(T)(T[] array, size_t delta, auto ref T init)

Ditto

bool expandArray(T, R)(ref T[] array, R range) if (isInputRange!R)

Ditto