package kernels
Import Path
github.com/apache/arrow-go/v18/arrow/compute/internal/kernels (on go.dev)
Dependency Relation
imports 24 packages, and imported by one package
Involved Source Files
base_arithmetic.go
base_arithmetic_amd64.go
base_arithmetic_avx2_amd64.go
base_arithmetic_sse4_amd64.go
boolean_cast.go
cast.go
cast_numeric.go
cast_numeric_amd64.go
cast_numeric_avx2_amd64.go
cast_numeric_sse4_amd64.go
cast_temporal.go
compareoperator_string.go
constant_factor.go
constant_factor_amd64.go
constant_factor_avx2_amd64.go
constant_factor_sse4_amd64.go
Package kernels defines all of the computation kernels for the compute
library. This requires >= go1.18 since it utilizes Go generics.
helpers.go
numeric_cast.go
rounding.go
roundmode_string.go
scalar_arithmetic.go
scalar_boolean.go
scalar_comparison_amd64.go
scalar_comparison_avx2_amd64.go
scalar_comparison_sse4_amd64.go
scalar_comparisons.go
scalar_set_lookup.go
string_casts.go
types.go
vector_hash.go
vector_run_end_encode.go
vector_selection.go
base_arithmetic_avx2_amd64.s
base_arithmetic_sse4_amd64.s
cast_numeric_avx2_amd64.s
cast_numeric_sse4_amd64.s
constant_factor_avx2_amd64.s
constant_factor_sse4_amd64.s
scalar_comparison_avx2_amd64.s
scalar_comparison_sse4_amd64.s
Package-Level Type Names (total 34)
( Action) Flush(*exec.ExecResult) error
( Action) FlushFinal(*exec.ExecResult) error
( Action) ObserveFound(int)
( Action) ObserveNotFound(int) error
( Action) ObserveNullFound(int)
( Action) ObserveNullNotFound(int) error
( Action) Reserve(int) error
( Action) Reset() error
( Action) ShouldEncodeNulls() bool
( AndNotOpKernel) Call(ctx *exec.KernelCtx, left, right *exec.ArraySpan, out *exec.ExecResult) error
( AndNotOpKernel) CallScalarLeft(ctx *exec.KernelCtx, left scalar.Scalar, right *exec.ArraySpan, out *exec.ExecResult) error
( AndNotOpKernel) CallScalarRight(ctx *exec.KernelCtx, left *exec.ArraySpan, right scalar.Scalar, out *exec.ExecResult) error
AndNotOpKernel : SimpleBinaryKernel
( AndOpKernel) Call(ctx *exec.KernelCtx, left, right *exec.ArraySpan, out *exec.ExecResult) error
( AndOpKernel) CallScalarLeft(ctx *exec.KernelCtx, left scalar.Scalar, right *exec.ArraySpan, out *exec.ExecResult) error
( AndOpKernel) CallScalarRight(ctx *exec.KernelCtx, left *exec.ArraySpan, right scalar.Scalar, out *exec.ExecResult) error
AndOpKernel : SimpleBinaryKernel
func ArithmeticExec(ity, oty arrow.Type, op ArithmeticOp) exec.ArrayKernelExec
func ArithmeticExecSameType(ty arrow.Type, op ArithmeticOp) exec.ArrayKernelExec
func GetArithmeticBinaryKernels(op ArithmeticOp) []exec.ScalarKernel
func GetArithmeticFloatingPointKernels(op ArithmeticOp) []exec.ScalarKernel
func GetArithmeticFunctionTimeDuration(op ArithmeticOp) []exec.ScalarKernel
func GetArithmeticUnaryFixedIntOutKernels(otype arrow.DataType, op ArithmeticOp) []exec.ScalarKernel
func GetArithmeticUnaryFloatingPointKernels(op ArithmeticOp) []exec.ScalarKernel
func GetArithmeticUnaryKernels(op ArithmeticOp) []exec.ScalarKernel
func GetArithmeticUnarySignedKernels(op ArithmeticOp) []exec.ScalarKernel
func GetDecimalBinaryKernels(op ArithmeticOp) []exec.ScalarKernel
func GetDecimalUnaryKernels(op ArithmeticOp) []exec.ScalarKernel
func SubtractDate32(op ArithmeticOp) exec.ArrayKernelExec
const OpAbsoluteValue
const OpAbsoluteValueChecked
const OpAcos
const OpAcosChecked
const OpAdd
const OpAddChecked
const OpAsin
const OpAsinChecked
const OpAtan
const OpAtan2
const OpCos
const OpCosChecked
const OpDiv
const OpDivChecked
const OpLn
const OpLnChecked
const OpLog10
const OpLog10Checked
const OpLog1p
const OpLog1pChecked
const OpLog2
const OpLog2Checked
const OpLogb
const OpLogbChecked
const OpMul
const OpMulChecked
const OpNegate
const OpNegateChecked
const OpPower
const OpPowerChecked
const OpSign
const OpSin
const OpSinChecked
const OpSqrt
const OpSqrtChecked
const OpSub
const OpSubChecked
const OpTan
const OpTanChecked
func GetBitwiseBinaryKernels(op BitwiseOp) []exec.ScalarKernel
const OpBitAnd
const OpBitOr
const OpBitXor
AllowDecimalTruncate bool
AllowFloatTruncate bool
AllowIntOverflow bool
AllowInvalidUtf8 bool
AllowTimeOverflow bool
AllowTimeTruncate bool
ToType arrow.DataType
( CastOptions) TypeName() string
CastOptions : github.com/apache/arrow-go/v18/arrow/compute.FunctionOptions
CastState is the kernel state for Cast functions, it is an alias to
the CastOptions object.
(*CompareData) Funcs() *CompareData
*CompareData : CompareFuncData
func (*CompareData).Funcs() *CompareData
func CompareFuncData.Funcs() *CompareData
( CompareFuncData) Funcs() *CompareData
*CompareData
( CompareOperator) String() string
CompareOperator : expvar.Var
CompareOperator : fmt.Stringer
func CompareKernels(op CompareOperator) []exec.ScalarKernel
func GetCompareKernel(ty exec.InputType, cmpType arrow.Type, op CompareOperator) exec.ScalarKernel
const CmpEQ
const CmpGE
const CmpGT
const CmpLE
const CmpLT
const CmpNE
NullSelection NullSelectionBehavior
( FilterOptions) TypeName() string
FilterOptions : github.com/apache/arrow-go/v18/arrow/compute.FunctionOptions
type FilterState = FilterOptions (struct)
( HashState) Allocator() memory.Allocator
Append prepares the action for the given input (reserving appropriately
sized data structures, etc.) and visits the input with the Action
Flush out accumulated results from last invocation
FlushFinal flushes the accumulated results across all invocations
of calls. The kernel should not be used again until after
Reset() is called.
GetDictionary returns the values (keys) accumulated in the dictionary
so far.
Reset for another run
( HashState) ValueType() arrow.DataType
( KleeneAndNotOpKernel) Call(ctx *exec.KernelCtx, left, right *exec.ArraySpan, out *exec.ExecResult) error
( KleeneAndNotOpKernel) CallScalarLeft(ctx *exec.KernelCtx, left scalar.Scalar, right *exec.ArraySpan, out *exec.ExecResult) error
( KleeneAndNotOpKernel) CallScalarRight(ctx *exec.KernelCtx, left *exec.ArraySpan, right scalar.Scalar, out *exec.ExecResult) error
KleeneAndNotOpKernel : SimpleBinaryKernel
( KleeneAndOpKernel) Call(ctx *exec.KernelCtx, left, right *exec.ArraySpan, out *exec.ExecResult) error
( KleeneAndOpKernel) CallScalarLeft(ctx *exec.KernelCtx, left scalar.Scalar, right *exec.ArraySpan, out *exec.ExecResult) error
( KleeneAndOpKernel) CallScalarRight(ctx *exec.KernelCtx, left *exec.ArraySpan, right scalar.Scalar, out *exec.ExecResult) error
KleeneAndOpKernel : SimpleBinaryKernel
( KleeneOrOpKernel) Call(ctx *exec.KernelCtx, left, right *exec.ArraySpan, out *exec.ExecResult) error
( KleeneOrOpKernel) CallScalarLeft(ctx *exec.KernelCtx, left scalar.Scalar, right *exec.ArraySpan, out *exec.ExecResult) error
( KleeneOrOpKernel) CallScalarRight(ctx *exec.KernelCtx, left *exec.ArraySpan, right scalar.Scalar, out *exec.ExecResult) error
KleeneOrOpKernel : SimpleBinaryKernel
const NullMatchingEmitNull
const NullMatchingInconclusive
const NullMatchingMatch
const NullMatchingSkip
const github.com/apache/arrow-go/v18/arrow/compute.NullMatchingEmitNull
const github.com/apache/arrow-go/v18/arrow/compute.NullMatchingInconclusive
const github.com/apache/arrow-go/v18/arrow/compute.NullMatchingMatch
const github.com/apache/arrow-go/v18/arrow/compute.NullMatchingSkip
func GetTakeIndices(mem memory.Allocator, filter *exec.ArraySpan, nullSelect NullSelectionBehavior) (arrow.ArrayData, error)
const DropNulls
const EmitNulls
const github.com/apache/arrow-go/v18/arrow/compute.SelectionDropNulls
const github.com/apache/arrow-go/v18/arrow/compute.SelectionEmitNulls
( OrOpKernel) Call(ctx *exec.KernelCtx, left, right *exec.ArraySpan, out *exec.ExecResult) error
( OrOpKernel) CallScalarLeft(ctx *exec.KernelCtx, left scalar.Scalar, right *exec.ArraySpan, out *exec.ExecResult) error
( OrOpKernel) CallScalarRight(ctx *exec.KernelCtx, left *exec.ArraySpan, right scalar.Scalar, out *exec.ExecResult) error
OrOpKernel : SimpleBinaryKernel
( RoundMode) String() string
RoundMode : expvar.Var
RoundMode : fmt.Stringer
func FixedRoundDecimalExec[T](mode RoundMode) exec.ArrayKernelExec
func GetSimpleRoundKernels(mode RoundMode) []exec.ScalarKernel
const AwayFromZero
const HalfAwayFromZero
const HalfDown
const HalfToEven
const HalfToOdd
const HalfTowardsZero
const HalfUp
const RoundDown
const RoundUp
const TowardsZero
const github.com/apache/arrow-go/v18/arrow/compute.RoundDown
const github.com/apache/arrow-go/v18/arrow/compute.RoundHalfDown
const github.com/apache/arrow-go/v18/arrow/compute.RoundHalfToEven
const github.com/apache/arrow-go/v18/arrow/compute.RoundHalfToOdd
const github.com/apache/arrow-go/v18/arrow/compute.RoundHalfTowardsInfinity
const github.com/apache/arrow-go/v18/arrow/compute.RoundHalfTowardsZero
const github.com/apache/arrow-go/v18/arrow/compute.RoundHalfUp
const github.com/apache/arrow-go/v18/arrow/compute.RoundTowardsInfinity
const github.com/apache/arrow-go/v18/arrow/compute.RoundTowardsZero
const github.com/apache/arrow-go/v18/arrow/compute.RoundUp
Mode RoundMode
NDigits int64
( RoundOptions) TypeName() string
RoundOptions : github.com/apache/arrow-go/v18/arrow/compute.FunctionOptions
var github.com/apache/arrow-go/v18/arrow/compute.DefaultRoundOptions
Pow10 float64
RoundOptions RoundOptions
RoundOptions.Mode RoundMode
RoundOptions.NDigits int64
( RoundState) TypeName() string
RoundState : github.com/apache/arrow-go/v18/arrow/compute.FunctionOptions
Mode is the rounding and tie-breaking mode
Multiple is the multiple to round to.
Should be a positive numeric scalar of a type compatible
with the argument to be rounded. The cast kernel is used
to convert the rounding multiple to match the result type.
( RoundToMultipleOptions) TypeName() string
RoundToMultipleOptions : github.com/apache/arrow-go/v18/arrow/compute.FunctionOptions
var github.com/apache/arrow-go/v18/arrow/compute.DefaultRoundToMultipleOptions
type RoundToMultipleState = RoundToMultipleOptions (struct)
RunEndType arrow.DataType
( RunEndEncodeState) TypeName() string
RunEndEncodeState : github.com/apache/arrow-go/v18/arrow/compute.FunctionOptions
type RunEndsType (interface)
Chunked exec.ChunkedExec
Exec exec.ArrayKernelExec
In exec.InputType
func GetVectorSelectionKernels() (filterkernels, takeKernels []SelectionKernelData)
NullBehavior NullMatchingBehavior
TotalLen int64
ValueSet []exec.ArraySpan
ValueSetType arrow.DataType
func CreateSetLookupState(opts SetLookupOptions, alloc memory.Allocator) (exec.KernelState, error)
func (*SetLookupState)[T].Init(opts SetLookupOptions) error
Type Parameters:
T: hashing.MemoTypes
Alloc memory.Allocator
Lookup hashing.TypedMemoTable[T]
When there are duplicates in value set, memotable indices
must be mapped back to indices in the value set
NullBehavior NullMatchingBehavior
NullIndex int32
ValueSetType arrow.DataType
(*SetLookupState[T]) AddArrayValueSet(data *exec.ArraySpan, startIdx int64) error
(*SetLookupState[T]) Init(opts SetLookupOptions) error
(*SetLookupState[T]) ValueType() arrow.DataType
func GetShiftKernels(dir ShiftDir, checked bool) []exec.ScalarKernel
const ShiftLeft
const ShiftRight
( SimpleBinaryKernel) Call(*exec.KernelCtx, *exec.ArraySpan, *exec.ArraySpan, *exec.ExecResult) error
( SimpleBinaryKernel) CallScalarLeft(*exec.KernelCtx, scalar.Scalar, *exec.ArraySpan, *exec.ExecResult) error
( SimpleBinaryKernel) CallScalarRight(*exec.KernelCtx, *exec.ArraySpan, scalar.Scalar, *exec.ExecResult) error
AndNotOpKernel
AndOpKernel
KleeneAndNotOpKernel
KleeneAndOpKernel
KleeneOrOpKernel
OrOpKernel
XorOpKernel
BoundsCheck bool
( TakeOptions) TypeName() string
TakeOptions : github.com/apache/arrow-go/v18/arrow/compute.FunctionOptions
type TakeState = TakeOptions (struct)
( XorOpKernel) Call(ctx *exec.KernelCtx, left, right *exec.ArraySpan, out *exec.ExecResult) error
( XorOpKernel) CallScalarLeft(ctx *exec.KernelCtx, left scalar.Scalar, right *exec.ArraySpan, out *exec.ExecResult) error
( XorOpKernel) CallScalarRight(ctx *exec.KernelCtx, left *exec.ArraySpan, right scalar.Scalar, out *exec.ExecResult) error
XorOpKernel : SimpleBinaryKernel
Package-Level Functions (total 114)
func ArithmeticExec(ity, oty arrow.Type, op ArithmeticOp) exec.ArrayKernelExec func ArithmeticExecSameType(ty arrow.Type, op ArithmeticOp) exec.ArrayKernelExec func CanCastFromDict(id arrow.Type) bool func CastDecimalToDecimal(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func CastDecimalToFloat16(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error
Type Parameters:
OutT: constraints.Float
func CastFloat32ToDecimal(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func CastFloat64ToDecimal(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func CastFloatingToFloating(_ *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func CastFloatingToInteger(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error
CastFromNull is a simple kernel for constructing an array of null values
for the requested data type, allowing casting of an arrow.Null typed value
to any other arbitrary data type.
func CastFsbToFsb(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error
Type Parameters:
OutT: decimal128.Num | decimal256.Num
Arg0: arrow.IntType | arrow.UintType
func CastIntegerToFloating(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func CastIntToInt(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func ChunkedPrimitiveTake(ctx *exec.KernelCtx, batch []*arrow.Chunked, out *exec.ExecResult) ([]*exec.ExecResult, error) func ChunkedTakeSupported(dt arrow.DataType) bool func CompareKernels(op CompareOperator) []exec.ScalarKernel func ConstBoolExec(val bool) func(*exec.KernelCtx, *exec.ExecSpan, *exec.ExecResult) error func CreateSetLookupState(opts SetLookupOptions, alloc memory.Allocator) (exec.KernelState, error) func DenseUnionImpl(ctx *exec.KernelCtx, batch *exec.ExecSpan, outputLength int64, out *exec.ExecResult, fn selectionOutputFn) error func DispatchIsIn(state lookupState, in *exec.ArraySpan, out *exec.ExecResult) error
Type Parameters:
InT: numeric
Type Parameters:
OutT: numeric
func FilterBinary(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func FilterExec(impl selectionImplFn) exec.ArrayKernelExec
Type Parameters:
T: decimal128.Num | decimal256.Num
func FSBImpl(ctx *exec.KernelCtx, batch *exec.ExecSpan, outputLength int64, out *exec.ExecResult, fn selectionOutputFn) error func FSLImpl(ctx *exec.KernelCtx, batch *exec.ExecSpan, outputLength int64, out *exec.ExecResult, fn selectionOutputFn) error func GetArithmeticBinaryKernels(op ArithmeticOp) []exec.ScalarKernel func GetArithmeticUnaryFixedIntOutKernels(otype arrow.DataType, op ArithmeticOp) []exec.ScalarKernel func GetArithmeticUnaryKernels(op ArithmeticOp) []exec.ScalarKernel func GetBitwiseBinaryKernels(op BitwiseOp) []exec.ScalarKernel func GetBitwiseUnaryKernels() []exec.ScalarKernel
GetBooleanCastKernels returns the slice of scalar kernels for casting
values *to* a boolean type.
func GetCastToDecimal128() []exec.ScalarKernel func GetCastToDecimal256() []exec.ScalarKernel
Type Parameters:
T: constraints.Float | float16.Num
GetCommonCastKernels returns the list of kernels common to all types
such as casting from null or from Extension types of the appropriate
underlying type.
func GetCompareKernel(ty exec.InputType, cmpType arrow.Type, op CompareOperator) exec.ScalarKernel func GetDate32CastKernels() []exec.ScalarKernel func GetDate64CastKernels() []exec.ScalarKernel func GetDecimalBinaryKernels(op ArithmeticOp) []exec.ScalarKernel func GetDecimalUnaryKernels(op ArithmeticOp) []exec.ScalarKernel func GetDurationCastKernels() []exec.ScalarKernel func GetFsbCastKernels() []exec.ScalarKernel func GetIntervalCastKernels() []exec.ScalarKernel func GetRoundUnaryKernels(init exec.KernelInitFn, knFn func(arrow.Type) exec.ArrayKernelExec) []exec.ScalarKernel func GetRunEndEncodeKernels() (encodeKns, decodeKns []exec.VectorKernel) func GetShiftKernels(dir ShiftDir, checked bool) []exec.ScalarKernel func GetSimpleRoundKernels(mode RoundMode) []exec.ScalarKernel func GetTakeIndices(mem memory.Allocator, filter *exec.ArraySpan, nullSelect NullSelectionBehavior) (arrow.ArrayData, error) func GetTime32CastKernels() []exec.ScalarKernel func GetTime64CastKernels() []exec.ScalarKernel func GetTimestampCastKernels() []exec.ScalarKernel func GetToBinaryKernels(outType arrow.DataType) []exec.ScalarKernel func GetVectorHashKernels() (unique, valueCounts, dictEncode []exec.VectorKernel) func GetVectorSelectionKernels() (filterkernels, takeKernels []SelectionKernelData)
GetZeroCastKernel returns a kernel for performing ZeroCast execution using
the ZeroCopyCastExec kernel function.
func InitRoundState(_ *exec.KernelCtx, args exec.KernelInitArgs) (exec.KernelState, error) func InitRoundToMultipleState(_ *exec.KernelCtx, args exec.KernelInitArgs) (exec.KernelState, error) func IsNaNKernels() []exec.ScalarKernel func IsNullNotNullKernels() []exec.ScalarKernel func MaxDecimalDigitsForInt(id arrow.Type) (int32, error)
Type Parameters:
T: constraints.Integer
MaxOf determines the max value for a given type since there is not
currently a generic way to do this for Go generics yet as all of the
math.Max/Min values are constants.
Type Parameters:
T: constraints.Integer
MinOf returns the minimum value for a given type since there is not
currently a generic way to do this with Go generics yet.
func NotExecKernel(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func NullExecKernel(nargs int) exec.ScalarKernel func NullFilter(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error
scalar kernel that ignores (assumed all-null inputs) and returns null
OutputAllNull is a simple kernel that initializes the output as an array
whose output is all null by setting nulls to the length.
func PrimitiveFilter(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func PrimitiveTake(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error
Type Parameters:
OutT: arrow.FixedWidthType
Arg0T: arrow.FixedWidthType
Arg1T: arrow.FixedWidthType
func ScalarBinaryBinaryArgsBoolOut(itrFn func(*exec.ArraySpan) exec.ArrayIter[[]byte], op binaryBinOp[bool]) exec.ArrayKernelExec func ScalarBinaryBools(ops *binaryBoolOps) exec.ArrayKernelExec
Type Parameters:
OutT: arrow.FixedWidthType
Arg0T: arrow.FixedWidthType
Arg1T: arrow.FixedWidthType
Type Parameters:
OutT: arrow.FixedWidthType
Arg0T: arrow.FixedWidthType
ScalarUnary returns a kernel for performing a unary operation on
FixedWidth types which is implemented using the passed in function
which will receive a slice containing the raw input data along with
a slice to populate for the output data.
Note that bool is not included in arrow.FixedWidthType since it is
represented as a bitmap, not as a slice of bool.
Type Parameters:
OutT: arrow.FixedWidthType
ScalarUnaryBoolArg is like ScalarUnary except it specifically expects a
function that takes a byte slice since booleans arrays are represented
as a bitmap.
Type Parameters:
Arg0T: arrow.FixedWidthType
ScalarUnaryBoolOutput is like ScalarUnary only it is for cases of boolean
output. The function should take in a slice of the input type and a slice
of bytes to fill with the output boolean bitmap.
Type Parameters:
OutT: arrow.FixedWidthType
Arg0T: arrow.FixedWidthType
ScalarUnaryNotNull is for generating a kernel to operate only on the
non-null values in the input array. The zerovalue of the output type
is used for any null input values.
Type Parameters:
OutT: arrow.FixedWidthType
OffsetT: int32 | int64
ScalarUnaryNotNullBinaryArg creates a unary kernel that accepts
a binary type input (Binary [offset int32], String [offset int32],
LargeBinary [offset int64], LargeString [offset int64]) and returns
a FixedWidthType output which is never null.
It implements the handling to iterate the offsets and values calling
the provided function on each byte slice. The zero value of the OutT
will be used as the output for elements of the input that are null.
Type Parameters:
OffsetT: int32 | int64
ScalarUnaryNotNullBinaryArgBoolOut creates a unary kernel that accepts
a binary type input (Binary [offset int32], String [offset int32],
LargeBinary [offset int64], LargeString [offset int64]) and returns
a boolean output which is never null.
It implements the handling to iterate the offsets and values calling
the provided function on each byte slice. The provided default value
will be used as the output for elements of the input that are null.
Type Parameters:
K: SimpleBinaryKernel
Type Parameters:
I: arrow.Duration | arrow.Time32 | arrow.Time64 | arrow.Timestamp
O: arrow.Duration | arrow.Time32 | arrow.Time64 | arrow.Timestamp
Type Parameters:
T: constraints.Integer
SizeOf determines the size in number of bytes for an integer
based on the generic value in a way that the compiler should
be able to easily evaluate and create as a constant.
func StructImpl(ctx *exec.KernelCtx, batch *exec.ExecSpan, outputLength int64, out *exec.ExecResult, fn selectionOutputFn) error func SubtractDate32(op ArithmeticOp) exec.ArrayKernelExec func TakeExec(impl selectionImplFn) exec.ArrayKernelExec func TimestampToDate32(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func TimestampToDate64(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func TimestampToTime32(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func TimestampToTime64(ctx *exec.KernelCtx, batch *exec.ExecSpan, out *exec.ExecResult) error func UnaryRoundExec(ty arrow.Type) exec.ArrayKernelExec func UnaryRoundToMultipleExec(ty arrow.Type) exec.ArrayKernelExec func UnboxBinaryScalar(val scalar.BinaryScalar) []byte
Type Parameters:
T: arrow.FixedWidthType
ZeroCopyCastExec is a kernel for performing a cast which can be executed
as a zero-copy operation. It simply forwards the buffers to the output.
This can be used for casting a type to itself, or for casts between
equivalent representations such as Int32 and Date32.
Package-Level Variables (total 4)
Package-Level Constants (total 66)
Round negative values with DOWN and positive values with UP
const CmpEQ CompareOperator = 0 // equal const CmpGE CompareOperator = 3 // greater_equal const CmpGT CompareOperator = 2 // greater const CmpLE CompareOperator = 5 // less_equal const CmpLT CompareOperator = 4 // less const CmpNE CompareOperator = 1 // not_equal const DropNulls NullSelectionBehavior = 0 const EmitNulls NullSelectionBehavior = 1
Round ties with AwayFromZero (aka "round half towards infinity")
Round ties with DOWN (aka "round half towards negative infinity")
Round ties to nearest even integer
Round ties to nearest odd integer
Round ties with TowardsZero (aka "round half away from infinity")
Round ties with UP (aka "round half towards positive infinity")
const NullMatchingEmitNull NullMatchingBehavior = 2 const NullMatchingInconclusive NullMatchingBehavior = 3 const NullMatchingMatch NullMatchingBehavior = 0 const NullMatchingSkip NullMatchingBehavior = 1 const OpAbsoluteValue ArithmeticOp = 4 const OpAbsoluteValueChecked ArithmeticOp = 25 const OpAcos ArithmeticOp = 12 const OpAcosChecked ArithmeticOp = 33 const OpAdd ArithmeticOp = 0
Checked versions will not use SIMD except for float32/float64 impls
const OpAsin ArithmeticOp = 11 const OpAsinChecked ArithmeticOp = 32 const OpAtan ArithmeticOp = 13 const OpAtan2 ArithmeticOp = 14 const OpCos ArithmeticOp = 9 const OpCosChecked ArithmeticOp = 30 const OpDiv ArithmeticOp = 3 const OpDivChecked ArithmeticOp = 24 const OpLn ArithmeticOp = 15 const OpLnChecked ArithmeticOp = 34 const OpLog10 ArithmeticOp = 16 const OpLog10Checked ArithmeticOp = 35 const OpLog1p ArithmeticOp = 18 const OpLog1pChecked ArithmeticOp = 37 const OpLog2 ArithmeticOp = 17 const OpLog2Checked ArithmeticOp = 36 const OpLogb ArithmeticOp = 19 const OpLogbChecked ArithmeticOp = 38 const OpMul ArithmeticOp = 2 const OpMulChecked ArithmeticOp = 23 const OpNegate ArithmeticOp = 5 const OpNegateChecked ArithmeticOp = 26 const OpPower ArithmeticOp = 7 const OpPowerChecked ArithmeticOp = 28
End NO SIMD
const OpSin ArithmeticOp = 8 const OpSinChecked ArithmeticOp = 29
NO SIMD for the following yet
No SIMD impls for the rest of these yet
const OpSub ArithmeticOp = 1 const OpSubChecked ArithmeticOp = 22 const OpTan ArithmeticOp = 10 const OpTanChecked ArithmeticOp = 31
Round to nearest integer less than or equal in magnitude (aka "floor")
Round to nearest integer greater than or equal in magnitude (aka "ceil")
const ShiftRight ShiftDir = 1
Get integral part without fractional digits (aka "trunc")
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |