Help us shape the future of Go! Take the 2026 Go Developer Survey

array

package
v0.7.3 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2018 License: MIT Imports: 3 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Base

type Base interface {
	BaseRef

	// Free will release the memory for this array. After Free is called,
	// the array should no longer be used.
	Free()
}

Base defines the base interface for working with any array type. All array types share this common interface.

type BaseBuilder

type BaseBuilder interface {
	// Type returns the type of values that this builder accepts.
	Type() semantic.Type

	// Len returns the currently allocated length for the array builder.
	Len() int

	// Cap returns the current capacity of the underlying array.
	Cap() int

	// Reserve ensures there is enough space for appending n elements by checking
	// the capacity and calling resize if necessary.
	Reserve(n int)

	// AppendNull will append a null value to the array.
	AppendNull()

	// BuildArray will construct the array.
	BuildArray() Base

	// Free will release the memory used for this builder.
	Free()
}

BaseBuilder defines the base interface for building an array of a given array type. All builder types share this common interface.

type BaseRef added in v0.7.1

type BaseRef interface {
	// Type returns the type of values that this array contains.
	Type() semantic.Type

	// IsNull will return true if the given index is null.
	IsNull(i int) bool

	// IsValid will return true if the given index is a valid value (not null).
	IsValid(i int) bool

	// Len will return the length of this array.
	Len() int

	// NullN will return the number of null values in this array.
	NullN() int

	// Slice will return a slice of the array.
	Slice(start, stop int) BaseRef

	// Copy will retain a reference to the array.
	Copy() Base
}

BaseRef defines the base interface for working with an array interface.

type Boolean

type Boolean interface {
	BooleanRef

	// Free will release the memory for this array. After Free is called,
	// the array should no longer be used.
	Free()
}

Boolean represents an abstraction over a bool array.

type BooleanBuilder

type BooleanBuilder interface {
	BaseBuilder
	Append(v bool)
	AppendValues(v []bool, valid ...[]bool)

	// BuildBooleanArray will construct the array.
	BuildBooleanArray() Boolean
}

BooleanBuilder represents an abstraction over building a bool array.

type BooleanRef added in v0.7.1

type BooleanRef interface {
	BaseRef
	Value(i int) bool
	BooleanSlice(start, stop int) BooleanRef
}

BooleanRef is a reference to a Boolean.

type Float

type Float interface {
	FloatRef

	// Free will release the memory for this array. After Free is called,
	// the array should no longer be used.
	Free()
}

Float represents an abstraction over a float array.

type FloatBuilder

type FloatBuilder interface {
	BaseBuilder
	Append(v float64)
	AppendValues(v []float64, valid ...[]bool)

	// BuildFloatArray will construct the array.
	BuildFloatArray() Float
}

FloatBuilder represents an abstraction over building a float array.

type FloatRef added in v0.7.1

type FloatRef interface {
	BaseRef
	Value(i int) float64
	FloatSlice(start, stop int) FloatRef

	// Float64Values will return the underlying slice for the Float array. It is the size
	// of the array and null values will be present, but the data at null indexes will be invalid.
	Float64Values() []float64
}

FloatRef is a reference to a Float.

type Int

type Int interface {
	IntRef

	// Free will release the memory for this array. After Free is called,
	// the array should no longer be used.
	Free()
}

Int represents an abstraction over an integer array.

type IntBuilder

type IntBuilder interface {
	BaseBuilder
	Append(v int64)
	AppendValues(v []int64, valid ...[]bool)

	// BuildIntArray will construct the array.
	BuildIntArray() Int
}

IntBuilder represents an abstraction over building a int array.

type IntRef added in v0.7.1

type IntRef interface {
	BaseRef
	Value(i int) int64
	IntSlice(start, stop int) IntRef

	// Int64Values will return the underlying slice for the Int array. It is the size
	// of the array and null values will be present, but the data at null indexes will be invalid.
	Int64Values() []int64
}

IntRef is a reference to an Int.

type String

type String interface {
	StringRef

	// Free will release the memory for this array. After Free is called,
	// the array should no longer be used.
	Free()
}

String represents an abstraction over a string array.

type StringBuilder

type StringBuilder interface {
	BaseBuilder
	Append(v string)
	AppendValues(v []string, valid ...[]bool)

	// BuildStringArray will construct the array.
	BuildStringArray() String
}

StringBuilder represents an abstraction over building a string array.

type StringRef added in v0.7.1

type StringRef interface {
	BaseRef
	Value(i int) string
	StringSlice(start, stop int) StringRef
}

StringRef is a reference to a String.

type Time

type Time interface {
	TimeRef

	// Free will release the memory for this array. After Free is called,
	// the array should no longer be used.
	Free()
}

Time represents an abstraction over a time array.

type TimeBuilder

type TimeBuilder interface {
	BaseBuilder
	Append(v values.Time)
	AppendValues(v []values.Time, valid ...[]bool)

	// BuildTimeArray will construct the array.
	BuildTimeArray() Time
}

TimeBuilder represents an abstraction over building a time array.

type TimeRef added in v0.7.1

type TimeRef interface {
	BaseRef
	Value(i int) values.Time
	TimeSlice(start, stop int) TimeRef
}

TimeRef is a reference to a Time.

type UInt

type UInt interface {
	UIntRef

	// Free will release the memory for this array. After Free is called,
	// the array should no longer be used.
	Free()
}

UInt represents an abstraction over an unsigned array.

type UIntBuilder

type UIntBuilder interface {
	BaseBuilder
	Append(v uint64)
	AppendValues(v []uint64, valid ...[]bool)

	// BuildUIntArray will construct the array.
	BuildUIntArray() UInt
}

UIntBuilder represents an abstraction over building a uint array.

type UIntRef added in v0.7.1

type UIntRef interface {
	BaseRef
	Value(i int) uint64
	UIntSlice(start, stop int) UIntRef

	// Uint64Values will return the underlying slice for the UInt array. It is the size
	// of the array and null values will be present, but the data at null indexes will be invalid.
	Uint64Values() []uint64
}

UIntRef is a reference to a UInt.

type ValueBuilder added in v0.7.1

type ValueBuilder struct {
	// Builder holds the BaseBuilder that will be used.
	Builder BaseBuilder
}

ValueBuilder is a wrapper around the various builders that allows appending to a builder using values.Value types.

func (*ValueBuilder) Append added in v0.7.1

func (b *ValueBuilder) Append(v values.Value) error

func (*ValueBuilder) AppendNull added in v0.7.1

func (b *ValueBuilder) AppendNull()

func (*ValueBuilder) BuildArray added in v0.7.1

func (b *ValueBuilder) BuildArray() Base

func (*ValueBuilder) Cap added in v0.7.1

func (b *ValueBuilder) Cap() int

func (*ValueBuilder) Len added in v0.7.1

func (b *ValueBuilder) Len() int

func (*ValueBuilder) Reserve added in v0.7.1

func (b *ValueBuilder) Reserve(n int)

func (*ValueBuilder) Type added in v0.7.1

func (b *ValueBuilder) Type() semantic.Type

Jump to

Keyboard shortcuts

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