Enum models_parser::ast::Value [−][src]
pub enum Value {
Number(String, bool),
SingleQuotedString(String),
NationalStringLiteral(String),
HexStringLiteral(String),
DoubleQuotedString(String),
Boolean(bool),
Interval {
value: String,
leading_field: Option<DateTimeField>,
leading_precision: Option<u64>,
last_field: Option<DateTimeField>,
fractional_seconds_precision: Option<u64>,
},
Null,
}
Expand description
Primitive SQL values such as number and string
Variants
Numeric literal
SingleQuotedString(String)
‘string value’
Tuple Fields of SingleQuotedString
0: String
NationalStringLiteral(String)
N’string value’
Tuple Fields of NationalStringLiteral
0: String
HexStringLiteral(String)
X’hex value’
Tuple Fields of HexStringLiteral
0: String
DoubleQuotedString(String)
Tuple Fields of DoubleQuotedString
0: String
Boolean(bool)
Boolean value true or false
Tuple Fields of Boolean
0: bool
INTERVAL literals, roughly in the following format:
INTERVAL '<value>' [ <leading_field> [ (<leading_precision>) ] ] [ TO <last_field> [ (<fractional_seconds_precision>) ] ]
,
e.g. INTERVAL '123:45.67' MINUTE(3) TO SECOND(2)
.
The parser does not validate the <value>
, nor does it ensure
that the <leading_field>
units >= the units in <last_field>
,
so the user will have to reject intervals like HOUR TO YEAR
.
Fields of Interval
value: String
leading_field: Option<DateTimeField>
leading_precision: Option<u64>
last_field: Option<DateTimeField>
fractional_seconds_precision: Option<u64>
The seconds precision can be specified in SQL source as
INTERVAL '__' SECOND(_, x)
(in which case the leading_field
will be Second
and the last_field
will be None
),
or as __ TO SECOND(x)
.
NULL
value
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Value
impl UnwindSafe for Value
Blanket Implementations
Mutably borrows from an owned value. Read more