Enum partiql_ast::ast::Lit
source · pub enum Lit {
Show 21 variants
Null,
Missing,
Int8Lit(i8),
Int16Lit(i16),
Int32Lit(i32),
Int64Lit(i64),
DecimalLit(Decimal),
NumericLit(Decimal),
RealLit(f32),
FloatLit(f32),
DoubleLit(f64),
BoolLit(bool),
IonStringLit(String),
CharStringLit(String),
NationalCharStringLit(String),
BitStringLit(String),
HexStringLit(String),
StructLit(AstNode<Struct>),
BagLit(AstNode<Bag>),
ListLit(AstNode<List>),
TypedLit(String, Type),
}
Expand description
Lit
is mostly inspired by SQL-92 Literals standard and PartiQL specification.
See section 5.3 in the following:
https://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt
and Section 2 of the following (Figure 1: BNF Grammar for PartiQL Values):
https://partiql.org/assets/PartiQL-Specification.pdf
Variants§
Null
Missing
Int8Lit(i8)
Int16Lit(i16)
Int32Lit(i32)
Int64Lit(i64)
DecimalLit(Decimal)
NumericLit(Decimal)
RealLit(f32)
FloatLit(f32)
DoubleLit(f64)
BoolLit(bool)
IonStringLit(String)
CharStringLit(String)
NationalCharStringLit(String)
BitStringLit(String)
HexStringLit(String)
StructLit(AstNode<Struct>)
BagLit(AstNode<Bag>)
ListLit(AstNode<List>)
TypedLit(String, Type)
E.g. TIME WITH TIME ZONE
in SELECT TIME WITH TIME ZONE '12:00' FROM ...
Trait Implementations§
impl StructuralPartialEq for Lit
Auto Trait Implementations§
impl RefUnwindSafe for Lit
impl Send for Lit
impl Sync for Lit
impl Unpin for Lit
impl UnwindSafe for Lit
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more