Enum taos_query::common::Ty

source ·
#[non_exhaustive]
#[repr(u8)]
pub enum Ty {
Show 15 variants Bool = 1, TinyInt = 2, SmallInt = 3, Int = 4, BigInt = 5, UTinyInt = 11, USmallInt = 12, UInt = 13, UBigInt = 14, Float = 6, Double = 7, Timestamp = 9, VarChar = 8, NChar = 10, Json = 15,
}
Expand description

TDengine data type enumeration.

enumintsql namerust type
Null0NULLNone
Bool1BOOLbool
TinyInt2TINYINTi8
SmallInt3SMALLINTi16
Int4INTi32
BitInt5BIGINTi64
Float6FLOATf32
Double7DOUBLEf64
VarChar8BINARY/VARCHARstr/String
Timestamp9TIMESTAMPi64
NChar10NCHARstr/String
UTinyInt11TINYINT UNSIGNEDu8
USmallInt12SMALLINT UNSIGNEDu16
UInt13INT UNSIGNEDu32
UBigInt14BIGINT UNSIGNEDu64
Json15JSONserde_json::Value

Note:

  • VarChar sql name is BINARY in v2, and VARCHAR in v3.
  • Decimal/Blob/MediumBlob is not supported in 2.0/3.0 .

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

Bool = 1

The BOOL type in sql, will be represented as bool in Rust.

§

TinyInt = 2

TINYINT type in sql, will be represented in Rust as i8.

§

SmallInt = 3

SMALLINT type in sql, will be represented in Rust as i16.

§

Int = 4

INT type in sql, will be represented in Rust as i32.

§

BigInt = 5

BIGINT type in sql, will be represented in Rust as i64.

§

UTinyInt = 11

UTinyInt, tinyint unsigned in sql, u8 in Rust.

§

USmallInt = 12

12: USmallInt, smallint unsigned in sql, u16 in Rust.

§

UInt = 13

13: UInt, int unsigned in sql, u32 in Rust.

§

UBigInt = 14

14: UBigInt, bigint unsigned in sql, u64 in Rust.

§

Float = 6

6: Float, float type in sql, will be represented in Rust as f32.

§

Double = 7

7: Double, tinyint type in sql, will be represented in Rust as f64.

§

Timestamp = 9

9: Timestamp, timestamp type in sql, will be represented as i64 in Rust. But can be deserialized to chrono::naive::NaiveDateTime or String.

§

VarChar = 8

8: VarChar, binary type in sql for TDengine 2.x, varchar for TDengine 3.x, will be represented in Rust as &str or String. This type of data be deserialized to Vec<u8>.

§

NChar = 10

10: NChar, nchar type in sql, the recommended way in TDengine to store utf-8 String.

§

Json = 15

15: Json, json tag in sql, will be represented as serde_json::value::Value in Rust.

Implementations§

source§

impl Ty

source

pub const fn is_null(&self) -> bool

Check if the data type is null or not.

source

pub const fn is_var_type(&self) -> bool

Var type is one of Ty::VarChar, Ty::VarBinary, Ty::NChar.

source

pub const fn is_json(&self) -> bool

source

pub const fn is_primitive(&self) -> bool

Is one of boolean/integers/float/double/decimal

source

pub const fn fixed_length(&self) -> usize

Get fixed length if the type is primitive.

source

pub const fn name(&self) -> &'static str

The sql name of type.

source

pub const fn lowercase_name(&self) -> &'static str

Trait Implementations§

source§

impl Clone for Ty

source§

fn clone(&self) -> Ty

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Ty

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Ty

source§

fn default() -> Ty

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for Ty

source§

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for Ty

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<i16> for Ty

source§

fn from(v: i16) -> Self

Converts to this type from the input type.
source§

impl From<i32> for Ty

source§

fn from(v: i32) -> Self

Converts to this type from the input type.
source§

impl From<i64> for Ty

source§

fn from(v: i64) -> Self

Converts to this type from the input type.
source§

impl From<i8> for Ty

source§

fn from(v: i8) -> Self

Converts to this type from the input type.
source§

impl From<u16> for Ty

source§

fn from(v: u16) -> Self

Converts to this type from the input type.
source§

impl From<u32> for Ty

source§

fn from(v: u32) -> Self

Converts to this type from the input type.
source§

impl From<u64> for Ty

source§

fn from(v: u64) -> Self

Converts to this type from the input type.
source§

impl From<u8> for Ty

source§

fn from(v: u8) -> Self

Converts to this type from the input type.
source§

impl FromStr for Ty

§

type Err = &'static str

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl Hash for Ty

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for Ty

source§

fn eq(&self, other: &Ty) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for Ty

source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for Ty

source§

impl Eq for Ty

source§

impl StructuralEq for Ty

source§

impl StructuralPartialEq for Ty

Auto Trait Implementations§

§

impl RefUnwindSafe for Ty

§

impl Send for Ty

§

impl Sync for Ty

§

impl Unpin for Ty

§

impl UnwindSafe for Ty

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,