pub enum Expr {
Show 17 variants
Column(usize),
Const(ConstValue),
Compare {
left: Box<Expr>,
op: CompareOp,
right: Box<Expr>,
},
And(Vec<Expr>),
Or(Vec<Expr>),
Not(Box<Expr>),
Add(Box<Expr>, Box<Expr>),
Sub(Box<Expr>, Box<Expr>),
Mul(Box<Expr>, Box<Expr>),
Div(Box<Expr>, Box<Expr>),
Mod(Box<Expr>, Box<Expr>),
Abs(Box<Expr>),
Min(Box<Expr>, Box<Expr>),
Max(Box<Expr>, Box<Expr>),
Pow(Box<Expr>, Box<Expr>),
Cast(Box<Expr>, ScalarType),
Conditional {
condition: Box<Expr>,
then_expr: Box<Expr>,
else_expr: Box<Expr>,
},
}Expand description
Expression in filter predicates
Variants§
Column(usize)
Column reference by index
Const(ConstValue)
Constant value
Compare
Binary comparison
Fields
And(Vec<Expr>)
Logical AND
Or(Vec<Expr>)
Logical OR
Not(Box<Expr>)
Logical NOT
Add(Box<Expr>, Box<Expr>)
Addition
Sub(Box<Expr>, Box<Expr>)
Subtraction
Mul(Box<Expr>, Box<Expr>)
Multiplication
Div(Box<Expr>, Box<Expr>)
Division
Mod(Box<Expr>, Box<Expr>)
Modulo
Abs(Box<Expr>)
Absolute value
Min(Box<Expr>, Box<Expr>)
Minimum of two values
Max(Box<Expr>, Box<Expr>)
Maximum of two values
Pow(Box<Expr>, Box<Expr>)
Power (base, exponent)
Cast(Box<Expr>, ScalarType)
Type cast
Conditional
Conditional expression: if condition then then_expr else else_expr The condition is a boolean comparison expression. Used for UDF conditionals like: if X >= 100 then 1 else 2
Trait Implementations§
impl StructuralPartialEq for Expr
Auto Trait Implementations§
impl Freeze for Expr
impl RefUnwindSafe for Expr
impl Send for Expr
impl Sync for Expr
impl Unpin for Expr
impl UnsafeUnpin for Expr
impl UnwindSafe for Expr
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