Expand description
Data types in RisingWave.
Re-exportsยง
pub use crate::array::ListRef;
pub use crate::array::ListValue;
pub use crate::array::MapRef;
pub use crate::array::MapValue;
pub use crate::array::StructRef;
pub use crate::array::StructValue;
Modulesยง
- cow ๐
- Convenient macros to generate match arms for
DataType
. - datetime ๐Date, time, and timestamp types.
- decimal ๐
- fields ๐
- from_
sql ๐ - interval ๐
- jsonb ๐
- macros ๐
- map_
type ๐ - native_
type ๐ - num256 ๐
- ops ๐
- ordered ๐
ScalarImpl
andDatum
wrappers that implementPartialOrd
andOrd
with default order type. - ordered_
float ๐Wrappers for total order on Floats. See theOrderedFloat
docs for details. - postgres_
type ๐ - private ๐
- scalar_
impl ๐ - sentinel ๐
- serial ๐
- struct_
type ๐ - successor ๐
- A separate mod so that
use types::*
oruse interval::*
does notuse IntervalTestExt
by accident. - timestamptz ๐
- to_
binary ๐ - to_sql ๐
- to_text ๐
- with_
data_ ๐type
Macrosยง
- impl_
convert ๐impl_convert
implements several conversions forScalar
. - scalar_
impl_ ๐enum DefineScalarImpl
andScalarRefImpl
with macro.
Structsยง
- Wrapper that delegates
PartialOrd
andOrd
to theDefaultPartialOrd
andDefaultOrd
implementations of inner type. - A 256-bit signed integer.
- A reference to an
Int256
value. - Every interval can be represented by a
Interval
. - Wrapper so that
Debug for IntervalDisplay
would use the concise format ofDisplay for Interval
. - Refer to
super::super::array::MapArray
for the invariants of a map value. - A cheaply cloneable struct type.
- Timestamp with timezone.
Enumsยง
- The set of datatypes that are supported in RisingWave.
- Auto-generated discriminant enum variants
ScalarImpl
embeds all possible scalars in the evaluation framework.ScalarRefImpl
embeds all possible scalar references in the evaluation framework.Sentinelled<T>
wraps typeT
to provide smallest (smaller than any normalT
value) and largest (larger than ant normalT
value) sentinel value forT
.
Traitsยง
- Variant of
Ord
that compares with default order. - A struct can implements
Fields
when if can be represented as a relational Row. - A simplified version of
num_traits::Signed
. UnlikeSigned::is_negative
orf64::is_sign_negative
, this returnsfalse
for-0.0
to keep consistency among integers, decimals and floats. Scalar
is a trait over all possible owned types in the evaluation framework.ScalarPartialOrd
allows comparison betweenScalar
andScalarRef
.ScalarRef
is a trait over all possible references in the evaluation framework.- To make sure there is
as_scalar_ref
for all scalar ref types. See https://github.com/risingwavelabs/risingwave/pull/9977/files#r1208972881 - A successor is a term that comes right after a particular value. Suppose n is a number (where n belongs to any whole number), then the successor of n is โn+1โ. The other terminologies used for a successor are just after, immediately after, and next value.
- This trait is to implement
to_owned_datum
forOption<ScalarImpl>
- Converts
ScalarRef
to pgwire โTEXTโ format. - A trait for all physical types that can be associated with a
DataType
.
Functionsยง
- Feeds the raw scalar reference of
datum
to the givenstate
, which should behave the same ascrate::array::Array::hash_at
, where NULL value will be carefully handled. - Returns whether the
literal
matches thedata_type
.
Type Aliasesยง
- A 32-bit floating point type with total order.
- A 64-bit floating point type with total order.