Crate vortex_dtype

Crate vortex_dtype 

Source
Expand description

A type system for Vortex

This crate contains the core logical type system for Vortex, including the definition of data types, and (optionally) logic for their serialization and deserialization.

Re-exports§

pub use half;

Modules§

arrow
Convert between Vortex crate::DType and Apache Arrow arrow_schema::DataType.
datetime
Module for Vortex datetime extension types.
flatbuffers
Flatbuffer representations for DTypes
proto
Protocol buffer representations for DTypes

Macros§

match_each_decimal_value
Matches over each decimal value variant, binding the inner value to a variable.
match_each_decimal_value_type
Macro to match over each decimal value type, binding the corresponding native type (from DecimalType)
match_each_float_ptype
Macro to match over each floating point type, binding the corresponding native type (from NativePType)
match_each_integer_ptype
Macro to match over each integer PType, binding the corresponding native type (from NativePType)
match_each_native_ptype
Macro to match over each PType, binding the corresponding native type (from NativePType)
match_each_native_simd_ptype
Macro to match over each SIMD capable PType, binding the corresponding native type (from NativePType)
match_each_signed_integer_ptype
Macro to match over each signed integer type, binding the corresponding native type (from NativePType)
match_each_unsigned_integer_ptype
Macro to match over each unsigned integer type, binding the corresponding native type (from NativePType)

Structs§

DecimalDType
Parameters that define the precision and scale of a decimal type.
ExtDType
A type descriptor for an extension type
ExtID
A unique identifier for an extension type
ExtMetadata
Opaque metadata for an extension type
FieldDType
DType of a struct’s field, either owned or a pointer to an underlying flatbuffer.
FieldName
A name for a field in a struct.
FieldNames
An ordered list of field names in a struct.
FieldNamesIntoIter
Owned iterator of field names.
FieldNamesIter
Iterator of references to field names.
FieldPath
A sequence of field selectors representing a path through zero or more layers of DType.
FieldPathSet
Contains a set of field paths, and can answer an efficient field path contains queries.
PrecisionScale
A struct representing the precision and scale of a decimal type, to be represented by the native type D.
StructFields
Type information for a struct column.
i256
Signed 256-bit integer type.

Enums§

DType
The logical types of elements in Vortex arrays.
DecimalType
Type of the decimal values.
Field
Selects a nested type within either a struct or a list.
FieldMask
A projection of fields under a layout.
Nullability
Whether an instance of a DType can be `null or not
PType
Physical type enum, represents the in-memory physical layout but might represent a different logical type.

Traits§

BigCast
Checked numeric casts up to and including i256 support.
DecimalTypeDowncast
Trait for downcasting decimal values to native integer types.
DecimalTypeUpcast
Trait for upcasting native integer types to decimal values.
FromPrimitiveOrF16
A trait for types that can be created from primitive values, including f16.
IntegerPType
Trait for integer primitive types that can be used as indices, offsets, or codes.
NativeDType
This trait is implemented by native Rust types that can be converted to and from Vortex scalar values. e.g. &str -> DType::Utf8 bool -> DType::Bool
NativeDecimalType
Type of decimal scalar values.
NativePType
A trait for native Rust types that correspond 1:1 to a PType.
PTypeDowncast
A visitor trait for converting a NativePType to another parameterized type.
PTypeDowncastExt
Extension trait to provide generic downcasting for PTypeDowncast.
PTypeUpcast
A visitor trait for converting a generic NativePType into a non-parameterized type.
PhysicalPType
A trait that allows conversion from a PType to its physical representation (i.e., unsigned)
ToBytes
A trait for types that can be converted to a little-endian byte slice
ToI256
Types that can potentially be converted to an i256.
TryFromBytes
A trait for types that can be converted from a little-endian byte slice
UnsignedPType
Trait for unsigned integer primitive types used where non-negative values are required.