# Functions

No description provided by the author
No description provided by the author
BinaryLike returns a TypeMatcher that will match Binary or String.
DurationTypeUnit returns a TypeMatcher that will match only a Duration datatype with the specified TimeUnit.
FillZeroLength fills an ArraySpan with the appropriate information for a Zero Length Array of the provided type.
FixedSizeBinaryLike returns a TypeMatcher that will match FixedSizeBinary or Decimal128/256.
GetAllocator retrieves the allocator from the context, or returns memory.DefaultAllocator if there was no allocator in the provided context.
GetSpanOffsets is like GetSpanValues, except it is only for int32 or int64 and adds the additional 1 expected value for an offset buffer (ie.
GetSpanValues returns a properly typed slice by reinterpreting the buffer at index i using unsafe.Slice.
No description provided by the author
Integer returns a TypeMatcher which will match any integral type like int8 or uint16.
LargeBinaryLike returns a TypeMatcher which will match LargeBinary or LargeString.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
NewScalarKernel constructs a new kernel for scalar execution, constructing a KernelSignature with the provided input types and output type, and using the passed in execution implementation and initialization function.
NewScalarKernelWithSig is a convenience when you already have a signature to use for constructing a kernel.
No description provided by the author
NewVectorKernel constructs a new kernel for execution of vector functions, which take into account more than just the individual scalar values of its input.
NewVectorKernelWithSig is a convenience function for creating a kernel when you already have a signature constructed.
OptionsInit should be used in the case where a KernelState is simply represented with a specific type by value (instead of pointer).
Primitive returns a TypeMatcher that will match any type that arrow.IsPrimitive returns true for.
PromoteExecSpanScalars promotes the values of the passed in ExecSpan from scalars to Arrays of length 1 for each value.
No description provided by the author
RunEndEncoded returns a matcher which matches a RunEndEncoded type whose encoded type is matched by the passed in matcher.
SameTypeID returns a type matcher which will match any DataType that uses the same arrow.Type ID as the one passed in here.
Time32TypeUnit returns a TypeMatcher that will match only a Time32 datatype with the specified TimeUnit.
Time64TypeUnit returns a TypeMatcher that will match only a Time64 datatype with the specified TimeUnit.
TimestampTypeUnit returns a TypeMatcher that will match only a Timestamp datatype with the specified TimeUnit.
WithAllocator returns a new context with the provided allocator embedded into the context.

# Constants

No description provided by the author
No description provided by the author
No description provided by the author
The kernel is responsible for allocating its own data buffer for fixed-width output types.
For data types that support pre-allocation (fixed-width), the kernel expects to be provided a pre-allocated buffer to write into.
Kernel will allocate and set the validity bitmap of the output.
Kernel expects a pre-allocated buffer to write the result bitmap into.
Compute the output validity bitmap by intersection the validity bitmaps of the arguments using bitwise-and operations.
kernel output is never null and a validity bitmap doesn't need to be allocated.
No description provided by the author
No description provided by the author

# Structs

ArraySpan is a light-weight, non-owning version of arrow.ArrayData for more efficient handling with computation and engines.
No description provided by the author
BufferSpan is a lightweight Buffer holder for ArraySpans that does not take ownership of the underlying memory.Buffer at all or could be used to reference raw byte slices instead.
No description provided by the author
ExecSpan represents a slice of inputs and is used to provide slices of input values to iterate over.
ExecValue represents a single input to an execution which could be either an Array (ArraySpan) or a Scalar value.
No description provided by the author
InputType is used for type checking arguments passed to a kernel and stored within a KernelSignature.
KernelCtx is a small struct holding the context for a kernel execution consisting of a pointer to the kernel, initialized state (if needed) and the context for this execution.
KernelInitArgs are the arguments required to initialize an Kernel's state using the input types and any options.
KernelSignature holds the input and output types for a kernel.
No description provided by the author
No description provided by the author
A ScalarKernel is the kernel implementation for a Scalar Function.
No description provided by the author
VectorKernel is a structure for implementations of vector functions.

# Interfaces

No description provided by the author
Kernel defines the minimum interface required for the basic execution kernel.
NonAggKernel builds on the base Kernel interface for non aggregate execution kernels.
TypeMatcher define an interface for matching Input or Output types for execution kernels.

# Type aliases

ArrayKernelExec is an alias definition for a kernel's execution function.
ChunkedExec is the signature for executing a stateful vector kernel against a ChunkedArray input.
ExecResult is the result of a kernel execution and should be populated by the execution functions and/or a kernel.
FinalizeFunc is an optional finalizer function for any postprocessing that may need to be done on data before returning it.
InputKind is an enum representing the type of Input matching that will be done.
KernelInitFn is any function that receives a KernelCtx and initialization arguments and returns the initialized state or an error.
No description provided by the author
MemAlloc is the preference for preallocating memory of fixed-width type outputs during kernel execution.
NullHandling is an enum representing how a particular Kernel wants the executor to handle nulls.
ResolveKind defines the way that a particular OutputType resolves its type.
TypeResolver is simply a function that takes a KernelCtx and a list of input types and returns the resolved type or an error.