Enum sqlite3_parser::ast::Expr[][src]

pub enum Expr {
    Between {
        lhs: Box<Expr>,
        not: bool,
        start: Box<Expr>,
        end: Box<Expr>,
    },
    Binary(Box<Expr>, OperatorBox<Expr>),
    Case {
        base: Option<Box<Expr>>,
        when_then_pairs: Vec<(Expr, Expr)>,
        else_expr: Option<Box<Expr>>,
    },
    Cast {
        expr: Box<Expr>,
        type_name: Type,
    },
    Collate(Box<Expr>, String),
    DoublyQualified(NameNameName),
    Exists(Box<Select>),
    FunctionCall {
        name: Id,
        distinctness: Option<Distinctness>,
        args: Option<Vec<Expr>>,
        filter_over: Option<FunctionTail>,
    },
    FunctionCallStar {
        name: Id,
        filter_over: Option<FunctionTail>,
    },
    Id(Id),
    InList {
        lhs: Box<Expr>,
        not: bool,
        rhs: Option<Vec<Expr>>,
    },
    InSelect {
        lhs: Box<Expr>,
        not: bool,
        rhs: Box<Select>,
    },
    InTable {
        lhs: Box<Expr>,
        not: bool,
        rhs: QualifiedName,
        args: Option<Vec<Expr>>,
    },
    IsNull(Box<Expr>),
    Like {
        lhs: Box<Expr>,
        not: bool,
        op: LikeOperator,
        rhs: Box<Expr>,
        escape: Option<Box<Expr>>,
    },
    Literal(Literal),
    Name(Name),
    NotNull(Box<Expr>),
    Parenthesized(Vec<Expr>),
    Qualified(NameName),
    Raise(ResolveTypeOption<Name>),
    Subquery(Box<Select>),
    Unary(UnaryOperatorBox<Expr>),
    Variable(String),
}

Variants

Between

Fields of Between

lhs: Box<Expr>not: boolstart: Box<Expr>end: Box<Expr>
Binary(Box<Expr>, OperatorBox<Expr>)
Case

Fields of Case

base: Option<Box<Expr>>when_then_pairs: Vec<(Expr, Expr)>else_expr: Option<Box<Expr>>
Cast

Fields of Cast

expr: Box<Expr>type_name: Type
Collate(Box<Expr>, String)
DoublyQualified(NameNameName)
Exists(Box<Select>)
FunctionCall

Fields of FunctionCall

name: Iddistinctness: Option<Distinctness>args: Option<Vec<Expr>>filter_over: Option<FunctionTail>
FunctionCallStar

Fields of FunctionCallStar

name: Idfilter_over: Option<FunctionTail>
Id(Id)
InList

Fields of InList

lhs: Box<Expr>not: boolrhs: Option<Vec<Expr>>
InSelect

Fields of InSelect

lhs: Box<Expr>not: boolrhs: Box<Select>
InTable

Fields of InTable

lhs: Box<Expr>not: boolrhs: QualifiedNameargs: Option<Vec<Expr>>
IsNull(Box<Expr>)
Like

Fields of Like

lhs: Box<Expr>not: boolop: LikeOperatorrhs: Box<Expr>escape: Option<Box<Expr>>
Literal(Literal)
Name(Name)
NotNull(Box<Expr>)
Parenthesized(Vec<Expr>)
Qualified(NameName)
Subquery(Box<Select>)
Variable(String)

Implementations

impl Expr[src]

pub fn parenthesized(x: Expr) -> Expr[src]

pub fn id(xt: u16, x: Token) -> Expr[src]

pub fn collate(x: Expr, ct: u16, c: Token) -> Expr[src]

pub fn cast(x: Expr, type_name: Type) -> Expr[src]

pub fn binary(left: Expr, op: u16, right: Expr) -> Expr[src]

pub fn like(
    lhs: Expr,
    not: bool,
    op: LikeOperator,
    rhs: Expr,
    escape: Option<Expr>
) -> Expr
[src]

pub fn not_null(x: Expr, op: u16) -> Expr[src]

pub fn unary(op: UnaryOperator, x: Expr) -> Expr[src]

pub fn between(lhs: Expr, not: bool, start: Expr, end: Expr) -> Expr[src]

pub fn in_list(lhs: Expr, not: bool, rhs: Option<Vec<Expr>>) -> Expr[src]

pub fn in_select(lhs: Expr, not: bool, rhs: Select) -> Expr[src]

pub fn in_table(
    lhs: Expr,
    not: bool,
    rhs: QualifiedName,
    args: Option<Vec<Expr>>
) -> Expr
[src]

pub fn sub_query(query: Select) -> Expr[src]

Trait Implementations

impl Clone for Expr[src]

impl Debug for Expr[src]

impl Display for Expr[src]

impl Eq for Expr[src]

impl PartialEq<Expr> for Expr[src]

impl StructuralEq for Expr[src]

impl StructuralPartialEq for Expr[src]

impl ToTokens for Expr[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.