pub type DataType = DataType;Aliased Type§
pub enum DataType {
Show 35 variants
Empty,
Unknown,
Null,
Bool,
SmallInt,
Int,
BigInt,
Float,
Double,
Decimal128,
String,
Date,
Time,
DateTime,
Vertex,
Edge,
Path,
List(Box<DataType>),
Map(Box<DataType>),
Set(Box<DataType>),
Geography,
DataSet,
FixedString(usize),
Blob,
Vector,
VectorDense(usize),
VectorSparse(usize),
Json,
JsonB,
Uuid,
Interval,
Decimal {
precision: u8,
scale: u8,
},
Union(Vec<DataType>),
Struct(Arc<StructTypeInfo>),
Array(Arc<ArrayTypeInfo>),
}Variants§
Empty
Unknown
Type unknown at parse/deduction time; resolved by the binder against
schema or binding scope. Distinct from Empty (which maps the explicit
Value::Empty), so “unknown type” and “empty value” never conflate.
Null
Bool
SmallInt
Int
BigInt
Float
Double
Decimal128
String
Date
Time
DateTime
Vertex
Edge
Path
List(Box<DataType>)
Variable-length list. Carries the homogeneous element type; an Empty
element type marks an untyped container (the pre-parameterization form
still accepted by DDL as bare LIST).
Map(Box<DataType>)
String-keyed map. Carries the shared value type; an Empty value type
marks an untyped container (bare MAP in DDL).
Set(Box<DataType>)
Set of unique elements. Carries the homogeneous element type; an
Empty element type marks an untyped container (bare SET in DDL).
Geography
DataSet
FixedString(usize)
Blob
Vector
VectorDense(usize)
VectorSparse(usize)
Json
JSON text type
JsonB
JSONB binary type
Uuid
UUID type
Interval
Interval type
Decimal
Parameterized decimal type with specified precision and scale.
Union(Vec<DataType>)
Union (tagged union / discriminated union) of types.
Struct(Arc<StructTypeInfo>)
STRUCT: named-field composite type with metadata.
Array(Arc<ArrayTypeInfo>)
ARRAY: element-homogeneous composite type with metadata.