arrow

package
v0.99.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 3, 2021 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AppendBool

func AppendBool(b array.Builder, v bool) error

AppendBool will append a bool to a compatible builder.

func AppendFloat

func AppendFloat(b array.Builder, v float64) error

AppendFloat will append a float64 to a compatible builder.

func AppendInt

func AppendInt(b array.Builder, v int64) error

AppendInt will append an int64 to a compatible builder.

func AppendString

func AppendString(b array.Builder, v string) error

AppendString will append a string to a compatible builder.

func AppendTime

func AppendTime(b array.Builder, v values.Time) error

AppendTime will append a Time value to a compatible builder.

func AppendUint

func AppendUint(b array.Builder, v uint64) error

AppendUint will append a uint64 to a compatible builder.

func AppendValue

func AppendValue(b array.Builder, v values.Value) error

AppendValue will append a value to the builder.

Be aware when using this function that it will perform more slowly than type switching the builder to its appropriate type and appending multiple values in a row.

func BoolSlice

func BoolSlice(arr *array.Boolean, i, j int) *array.Boolean

func FloatSlice

func FloatSlice(arr *array.Float64, i, j int) *array.Float64

func IntSlice

func IntSlice(arr *array.Int64, i, j int) *array.Int64

func NewAllocator

func NewAllocator(a *memory.Allocator) arrowmemory.Allocator

func NewBool

func NewBool(vs []bool, alloc *memory.Allocator) *array.Boolean

func NewBoolBuilder

func NewBoolBuilder(a *memory.Allocator) *array.BooleanBuilder

func NewBuilder

func NewBuilder(typ flux.ColType, mem memory.Allocator) array.Builder

NewBuilder constructs a new builder for the given column type. The allocator passed in must be non-nil.

func NewFloat

func NewFloat(vs []float64, alloc *memory.Allocator) *array.Float64

func NewFloatBuilder

func NewFloatBuilder(a *memory.Allocator) *array.Float64Builder

func NewInt

func NewInt(vs []int64, alloc *memory.Allocator) *array.Int64

func NewIntBuilder

func NewIntBuilder(a *memory.Allocator) *array.Int64Builder

func NewString

func NewString(vs []string, alloc *memory.Allocator) *array.Binary

func NewStringBuilder

func NewStringBuilder(a *memory.Allocator) *array.BinaryBuilder

func NewUint

func NewUint(vs []uint64, alloc *memory.Allocator) *array.Uint64

func NewUintBuilder

func NewUintBuilder(a *memory.Allocator) *array.Uint64Builder

func Repeat

func Repeat(v values.Value, n int, mem memory.Allocator) array.Interface

Repeat will construct an arrow array that repeats the value n times.

func Slice

func Slice(arr array.Interface, i, j int64) array.Interface

Slice will construct a new slice of the array using the given start and stop index. The returned array must be released.

This is functionally equivalent to using array.NewSlice, but array.NewSlice will construct an array.String when the data type is a string rather than an array.Binary.

func StringSlice

func StringSlice(arr *array.Binary, i, j int) *array.Binary

func UintSlice

func UintSlice(arr *array.Uint64, i, j int) *array.Uint64

Types

type TableBuffer

type TableBuffer struct {
	GroupKey flux.GroupKey
	Columns  []flux.ColMeta
	Values   []array.Interface
}

TableBuffer represents the buffered component of an arrow table.

TableBuffer is a low-level structure for creating a table that implements the flux.ColReader interface. It does not have very many guiding blocks to ensure it is used correctly.

A valid TableBuffer will have a number of columns that is equal in length to the number of values arrays. All of the values arrays will have the same length.

func (*TableBuffer) Bools

func (t *TableBuffer) Bools(j int) *array.Boolean

func (*TableBuffer) Cols

func (t *TableBuffer) Cols() []flux.ColMeta

func (*TableBuffer) Floats

func (t *TableBuffer) Floats(j int) *array.Float64

func (*TableBuffer) Ints

func (t *TableBuffer) Ints(j int) *array.Int64

func (*TableBuffer) Key

func (t *TableBuffer) Key() flux.GroupKey

func (*TableBuffer) Len

func (t *TableBuffer) Len() int

func (*TableBuffer) Release

func (t *TableBuffer) Release()

func (*TableBuffer) Retain

func (t *TableBuffer) Retain()

func (*TableBuffer) Strings

func (t *TableBuffer) Strings(j int) *array.Binary

func (*TableBuffer) Times

func (t *TableBuffer) Times(j int) *array.Int64

func (*TableBuffer) UInts

func (t *TableBuffer) UInts(j int) *array.Uint64

func (*TableBuffer) Validate

func (t *TableBuffer) Validate() error

Validate will validate that this TableBuffer has the proper structure.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL