pub enum Expr {
Show 26 variants
ColRef {
idx: u32,
},
PropAccess {
col: u32,
prop: String,
},
IntLiteral(i64),
FloatLiteral(f64),
BoolLiteral(bool),
StringLiteral(String),
NullLiteral,
Cmp {
op: CmpOp,
lhs: Box<Expr>,
rhs: Box<Expr>,
},
And {
lhs: Box<Expr>,
rhs: Box<Expr>,
},
Or {
lhs: Box<Expr>,
rhs: Box<Expr>,
},
Not {
expr: Box<Expr>,
},
IsNull {
expr: Box<Expr>,
},
IsNotNull {
expr: Box<Expr>,
},
StartsWith {
expr: Box<Expr>,
pattern: String,
},
EndsWith {
expr: Box<Expr>,
pattern: String,
},
Contains {
expr: Box<Expr>,
pattern: String,
},
In {
expr: Box<Expr>,
items: Vec<Expr>,
},
ListLiteral {
items: Vec<Expr>,
},
MapLiteral {
entries: Vec<(String, Expr)>,
},
Exists {
expr: Box<Expr>,
},
ListComprehension {
list: Box<Expr>,
var: String,
predicate: Option<Box<Expr>>,
map: Box<Expr>,
},
Agg {
fn_: AggFn,
expr: Option<Box<Expr>>,
},
Arith {
op: ArithOp,
lhs: Box<Expr>,
rhs: Box<Expr>,
},
Param {
name: String,
expected_type: Option<String>,
},
Case {
arms: Vec<(Expr, Expr)>,
else_expr: Option<Box<Expr>>,
},
VectorSimilarity {
metric: VectorMetric,
lhs: Box<Expr>,
rhs: Box<Expr>,
},
}Variants§
ColRef
PropAccess
IntLiteral(i64)
FloatLiteral(f64)
BoolLiteral(bool)
StringLiteral(String)
NullLiteral
Cmp
And
Or
Not
IsNull
IsNotNull
StartsWith
EndsWith
Contains
In
ListLiteral
MapLiteral
Exists
ListComprehension
Agg
Arith
Param
Case
VectorSimilarity
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