Documentation
¶
Index ¶
- func ColumnTypes() []typedcolumn.ColumnType
- func Encodings() []typedcolumn.Encoding
- func IsKnownColumnType(t typedcolumn.ColumnType) bool
- func IsKnownEncoding(e typedcolumn.Encoding) bool
- func IsKnownLogicalType(t LogicalType) bool
- func RequireSupported(desc Descriptor, op Operation) error
- type Capability
- func CapabilityFor(desc Descriptor, op Operation) Capability
- func Fallback(op Operation, reason ReasonCode, msg string) Capability
- func Supported(op Operation) Capability
- func SupportedResult(op Operation, result ResultSemantics) Capability
- func Unsupported(op Operation, reason ReasonCode, msg string) Capability
- type Descriptor
- type LogicalType
- type Operation
- type ReasonCode
- type ResolutionPhase
- type ResultSemantics
- type Status
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ColumnTypes ¶
func ColumnTypes() []typedcolumn.ColumnType
func Encodings ¶
func Encodings() []typedcolumn.Encoding
func IsKnownColumnType ¶
func IsKnownColumnType(t typedcolumn.ColumnType) bool
func IsKnownEncoding ¶
func IsKnownEncoding(e typedcolumn.Encoding) bool
func IsKnownLogicalType ¶
func IsKnownLogicalType(t LogicalType) bool
func RequireSupported ¶
func RequireSupported(desc Descriptor, op Operation) error
Types ¶
type Capability ¶
type Capability struct {
Operation Operation
Status Status
Reason ReasonCode
Message string
Phase ResolutionPhase
Result ResultSemantics
}
func CapabilityFor ¶
func CapabilityFor(desc Descriptor, op Operation) Capability
func Fallback ¶
func Fallback(op Operation, reason ReasonCode, msg string) Capability
func Supported ¶
func Supported(op Operation) Capability
func SupportedResult ¶
func SupportedResult(op Operation, result ResultSemantics) Capability
func Unsupported ¶
func Unsupported(op Operation, reason ReasonCode, msg string) Capability
func (Capability) Error ¶
func (c Capability) Error() string
func (Capability) Supported ¶
func (c Capability) Supported() bool
type Descriptor ¶
type Descriptor struct {
Logical LogicalType
Physical typedcolumn.ColumnType
Encoding typedcolumn.Encoding
Nullable bool
DictionaryOrder bool
DictionaryCollation string
}
Descriptor binds logical semantics to the current typedcolumn physical shape.
type LogicalType ¶
type LogicalType string
LogicalType names the collection-level value domain. It is intentionally separate from typedcolumn.ColumnType because several current encodings share carriers without sharing value semantics (for example float bits in int64).
const ( LogicalBool LogicalType = "bool" LogicalInt64 LogicalType = "int64" LogicalFloat32 LogicalType = "float32" LogicalDouble LogicalType = "double" LogicalString LogicalType = "string" LogicalInt8 LogicalType = "int8" LogicalUint8 LogicalType = "uint8" LogicalInt16 LogicalType = "int16" LogicalUint16 LogicalType = "uint16" LogicalInt32 LogicalType = "int32" LogicalUint32 LogicalType = "uint32" LogicalUint64 LogicalType = "uint64" // Float16 and BFloat16 are storage-only raw 16-bit bit payloads. LogicalFloat16 LogicalType = "float16" LogicalBFloat16 LogicalType = "bfloat16" LogicalUint8Vector LogicalType = "uint8_vector" LogicalInt8Vector LogicalType = "int8_vector" LogicalUint16Vector LogicalType = "uint16_vector" LogicalInt16Vector LogicalType = "int16_vector" LogicalUint32Vector LogicalType = "uint32_vector" LogicalInt32Vector LogicalType = "int32_vector" LogicalUint64Vector LogicalType = "uint64_vector" LogicalInt64Vector LogicalType = "int64_vector" LogicalFloat16Vector LogicalType = "float16_vector" LogicalBFloat16Vector LogicalType = "bfloat16_vector" LogicalFloat32Vector LogicalType = "float32_vector" LogicalFloat64Vector LogicalType = "float64_vector" LogicalByteVector LogicalType = "byte_vector" LogicalPackedBitVector LogicalType = "packed_bit_vector" LogicalPackedUint2Vector LogicalType = "packed_uint2_vector" LogicalPackedUint4Vector LogicalType = "packed_uint4_vector" LogicalUint32List LogicalType = "uint32_list" LogicalBytes LogicalType = "bytes" LogicalAdjacencyList LogicalType = "adjacency_list" )
func LogicalTypes ¶
func LogicalTypes() []LogicalType
type Operation ¶
type Operation string
Operation identifies the semantic question answered by the matrix. Query planners resolve these at prepare time and then dispatch to concrete kernels; callers must not consult this package per row in hot loops.
const ( OpAllRows Operation = "predicate.all_rows" OpEquality Operation = "predicate.equality" OpInequality Operation = "predicate.inequality" OpOrderedRange Operation = "predicate.ordered_range" OpInList Operation = "predicate.in_list" OpIsNull Operation = "predicate.is_null" OpIsNotNull Operation = "predicate.is_not_null" OpStringPrefix Operation = "predicate.string_prefix" OpStringLexicalRange Operation = "predicate.string_lexical_range" OpUnknownPredicateKind Operation = "predicate.unknown_kind" OpDictionaryEquality Operation = "predicate.dictionary_equality" OpDictionaryInList Operation = "predicate.dictionary_in_list" OpDictionaryCategory Operation = "predicate.dictionary_category" OpDictionaryRange Operation = "predicate.dictionary_range" OpVectorSimilarity Operation = "predicate.vector_similarity" OpVectorDotProduct Operation = "vector.dot_product" OpVectorDirectPayload Operation = "direct.vector_payload" OpUint32ListDirectPayload Operation = "direct.uint32_list_payload" OpBytesDirectPayload Operation = "direct.bytes_payload" OpAdjacencyTraversal Operation = "graph.adjacency_traversal" OpAdjacencyDirectPayload Operation = "direct.adjacency_payload" OpCountRows Operation = "aggregate.count_rows" OpCountNonNull Operation = "aggregate.count_non_null" OpSum Operation = "aggregate.sum" OpAvg Operation = "aggregate.avg" OpMin Operation = "aggregate.min" OpMax Operation = "aggregate.max" OpBoolCounts Operation = "aggregate.bool_counts" OpDictionaryGroupBy Operation = "aggregate.dictionary_group_by" OpDictionaryCount Operation = "aggregate.dictionary_count" OpDictionaryCountDistinct Operation = "aggregate.dictionary_count_distinct" OpVectorMetrics Operation = "aggregate.vector_metrics" OpAdjacencyMetrics Operation = "aggregate.adjacency_metrics" OpStatsMinMax Operation = "stats.min_max" OpStatsSum Operation = "stats.sum" OpPruneEquality Operation = "pruning.equality" OpPruneOrderedRange Operation = "pruning.ordered_range" OpDirectScalarValueCarrier Operation = "direct.scalar_value_carrier" )
type ReasonCode ¶
type ReasonCode string
ReasonCode is a stable diagnostic token. Add new values rather than changing existing strings; tests and planner diagnostics may key on them.
const ( ReasonSupported ReasonCode = "supported" ReasonUnknownLogicalType ReasonCode = "unknown_logical_type" ReasonUnsupportedPhysicalType ReasonCode = "unsupported_physical_type" ReasonUnsupportedEncoding ReasonCode = "unsupported_encoding" ReasonLogicalPhysicalMismatch ReasonCode = "logical_physical_mismatch" ReasonEncodingPhysicalMismatch ReasonCode = "encoding_physical_mismatch" ReasonOperationUnsupported ReasonCode = "operation_unsupported" ReasonFloatRawInt64BitPattern ReasonCode = "float_raw_int64_bit_pattern" ReasonNativeFloatLayoutMissing ReasonCode = "native_float_layout_missing" ReasonDictionaryOrderUnproven ReasonCode = "dictionary_order_unproven" ReasonDictionaryCollationUnproven ReasonCode = "dictionary_collation_unproven" ReasonNullableCarrierValueSemantics ReasonCode = "nullable_carrier_value_semantics" ReasonNullableCarrierAggregateSemantics ReasonCode = "nullable_carrier_aggregate_semantics" ReasonNotNullable ReasonCode = "not_nullable" ReasonVectorScalarOperationUnsupported ReasonCode = "vector_scalar_operation_unsupported" ReasonUint32ListScalarOperationUnsupported ReasonCode = "uint32_list_scalar_operation_unsupported" ReasonBytesScalarOperationUnsupported ReasonCode = "bytes_scalar_operation_unsupported" ReasonAdjacencyScalarOperationUnsupported ReasonCode = "adjacency_scalar_operation_unsupported" ReasonVectorCapabilityDeferred ReasonCode = "vector_capability_deferred" ReasonAdjacencyCapabilityDeferred ReasonCode = "adjacency_capability_deferred" ReasonBoolRangeUnsupported ReasonCode = "bool_range_unsupported" ReasonStatsPayloadUnsupported ReasonCode = "stats_payload_unsupported" ReasonPruningPayloadUnsupported ReasonCode = "pruning_payload_unsupported" )
type ResolutionPhase ¶
type ResolutionPhase string
ResolutionPhase records where a caller is allowed to make the semantic dispatch decision. Current #1843 consumers resolve once during prepare; hot row loops must already have selected a concrete scan/reducer implementation.
const (
PhasePrepare ResolutionPhase = "prepare"
)
type ResultSemantics ¶
type ResultSemantics struct {
ResultType string
Accumulator string
OverflowPolicy string
Comparison string
GroupKey string
Precision string
}
ResultSemantics makes aggregate result shape explicit for capabilities that expose aggregate output. Empty fields mean the operation is not an aggregate result capability.