Table of Contents

Class RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

Namespace
Apache.Arrow
Assembly
Apache.Arrow.dll

Builder for RunEndEncodedArray.

public class RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> : IArrowArrayBuilder<TValue, RunEndEncodedArray, RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>>, IArrowArrayBuilder<RunEndEncodedArray, RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>>, IArrowArrayBuilder<RunEndEncodedArray>, IArrowArrayBuilder where TRunEndBuilder : IArrowArrayBuilder<TRunEndArray> where TValueBuilder : IArrowArrayBuilder<TValueArray> where TRunEndArray : IArrowArray where TValueArray : IArrowArray

Type Parameters

TRunEndBuilder

The type of the run ends array builder.

TValueBuilder

The type of the values array builder.

TRunEndArray

The type of the run ends array (must be Int16Array, Int32Array, or Int64Array).

TValueArray

The type of the values array.

TValue

The type of values contained in the values array.

Inheritance
RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>
Implements
IArrowArrayBuilder<TValue, RunEndEncodedArray, RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>>
IArrowArrayBuilder<RunEndEncodedArray, RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>>
Inherited Members

Constructors

Builder(TRunEndBuilder, TValueBuilder, IEqualityComparer<TValue>)

public Builder(TRunEndBuilder runEndsBuilder, TValueBuilder valuesBuilder, IEqualityComparer<TValue> comparer = null)

Parameters

runEndsBuilder TRunEndBuilder

The builder to use for run-ends. Must be a builder for an Int16, Int32 or Int64 array.

valuesBuilder TValueBuilder

The builder to use for values.

comparer IEqualityComparer<TValue>

Optional equality comparer for value run-length grouping.

Properties

Length

Gets the total logical length of elements appended to this builder.

public int Length { get; }

Property Value

int

RunEndsBuilder

Gets the run ends builder.

public TRunEndBuilder RunEndsBuilder { get; }

Property Value

TRunEndBuilder

ValuesBuilder

Gets the values builder.

public TValueBuilder ValuesBuilder { get; }

Property Value

TValueBuilder

Methods

Append(ReadOnlySpan<TValue>)

Appends a span of values to the builder.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> Append(ReadOnlySpan<TValue> span)

Parameters

span ReadOnlySpan<TValue>

The span of values to append.

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

The builder instance for method chaining.

Append(TValue)

Appends a single value to the builder, automatically grouping identical consecutive values into runs.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> Append(TValue value)

Parameters

value TValue

The value to append.

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

The builder instance for method chaining.

AppendNull()

Appends a null value to the builder.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> AppendNull()

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

The builder instance for method chaining.

AppendRange(IEnumerable<TValue>)

Appends a sequence of values to the builder.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> AppendRange(IEnumerable<TValue> values)

Parameters

values IEnumerable<TValue>

The sequence of values to append.

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

The builder instance for method chaining.

Build(MemoryAllocator)

Flushes any pending run and builds the RunEndEncodedArray.

public RunEndEncodedArray Build(MemoryAllocator allocator = null)

Parameters

allocator MemoryAllocator

Optional memory allocator.

Returns

RunEndEncodedArray

The constructed RunEndEncodedArray.

Clear()

Clears the state of the builder and inner builders.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> Clear()

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

The builder instance for method chaining.

Reserve(int)

Validates the capacity argument. Does not preallocate inner builders to allow doubling growth strategy with REE compression.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> Reserve(int capacity)

Parameters

capacity int

The capacity to validate.

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

The builder instance for method chaining.

Resize(int)

Resizing is not supported for RunEndEncodedArray.Builder.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> Resize(int length)

Parameters

length int

The target length.

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

The builder instance for method chaining.

Set(int, TValue)

Setting elements at specific indices is not supported for RunEndEncodedArray.Builder.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> Set(int index, TValue value)

Parameters

index int
value TValue

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>

Swap(int, int)

Swapping elements is not supported for RunEndEncodedArray.Builder.

public RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> Swap(int i, int j)

Parameters

i int
j int

Returns

RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>