pub enum BoolExpr {
Filter(FilterCondition),
Raw(RawSql),
And(Box<BoolExpr>, Box<BoolExpr>),
Or(Box<BoolExpr>, Box<BoolExpr>),
Not(Box<BoolExpr>),
Exists(Box<SubquerySpec>),
NotExists(Box<SubquerySpec>),
InSubquery(Box<InSubquerySpec>),
NotInSubquery(Box<InSubquerySpec>),
}Expand description
Boolean expression AST for WHERE clauses.
Variants§
Filter(FilterCondition)
A single parameterized filter condition.
Raw(RawSql)
Raw SQL fragment (no parameters), e.g. global query filters.
Payload is RawSql (pub(crate)) so the variant cannot be
constructed by external code.
And(Box<BoolExpr>, Box<BoolExpr>)
AND combination.
Or(Box<BoolExpr>, Box<BoolExpr>)
OR combination.
Not(Box<BoolExpr>)
NOT negation.
Exists(Box<SubquerySpec>)
EXISTS (SELECT 1 FROM related_table WHERE related.fk = outer.pk AND
NotExists(Box<SubquerySpec>)
NOT EXISTS (…)
InSubquery(Box<InSubquerySpec>)
column IN (SELECT projection FROM source_table [WHERE predicate])
NotInSubquery(Box<InSubquerySpec>)
column NOT IN (SELECT projection FROM source_table [WHERE predicate])
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BoolExpr
impl RefUnwindSafe for BoolExpr
impl Send for BoolExpr
impl Sync for BoolExpr
impl Unpin for BoolExpr
impl UnsafeUnpin for BoolExpr
impl UnwindSafe for BoolExpr
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