Skip to main content

DataType

Type Alias DataType 

Source
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.

Fields

§precision: u8
§scale: u8
§

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.