Class RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>
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
TRunEndBuilderThe type of the run ends array builder.
TValueBuilderThe type of the values array builder.
TRunEndArrayThe type of the run ends array (must be Int16Array, Int32Array, or Int64Array).
TValueArrayThe type of the values array.
TValueThe 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>)
Initializes a new instance of the RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue> class.
public Builder(TRunEndBuilder runEndsBuilder, TValueBuilder valuesBuilder, IEqualityComparer<TValue> comparer = null)
Parameters
runEndsBuilderTRunEndBuilderThe builder to use for run-ends. Must be a builder for an Int16, Int32 or Int64 array.
valuesBuilderTValueBuilderThe builder to use for values.
comparerIEqualityComparer<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
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
spanReadOnlySpan<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
valueTValueThe 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
valuesIEnumerable<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
allocatorMemoryAllocatorOptional 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
capacityintThe 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
lengthintThe 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
indexintvalueTValue
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
Returns
- RunEndEncodedArray.Builder<TRunEndBuilder, TValueBuilder, TRunEndArray, TValueArray, TValue>