pub enum BoundPredicate {
And(Vec<Self>),
Or(Vec<Self>),
Not(Box<Self>),
Constant(TruthValue),
Comparison {
left: BoundScalarExpression,
right: BoundScalarExpression,
},
IsNull(BoundScalarExpression),
IsNotNull(BoundScalarExpression),
InList {
expression: BoundScalarExpression,
values: Vec<BoundScalarExpression>,
negated: bool,
},
IsDistinctFrom {
left: BoundScalarExpression,
right: BoundScalarExpression,
},
IsNotDistinctFrom {
left: BoundScalarExpression,
right: BoundScalarExpression,
},
BindingsPresent {
required_bindings: BindingSet,
},
Opaque {
referenced_bindings: BindingSet,
},
}Expand description
Bound boolean nodes required by the null-rejection analysis.
Variants§
And(Vec<Self>)
Or(Vec<Self>)
Not(Box<Self>)
Constant(TruthValue)
Comparison
IsNull(BoundScalarExpression)
IsNotNull(BoundScalarExpression)
InList
IsDistinctFrom
IsNotDistinctFrom
BindingsPresent
Tests whether every listed binding is present in the current row.
This is not a general SQL EXISTS subquery. Unsupported subqueries must
be represented by Self::Opaque.
Fields
§
required_bindings: BindingSetOpaque
Fields
§
referenced_bindings: BindingSetImplementations§
Source§impl BoundPredicate
impl BoundPredicate
pub fn referenced_bindings(&self) -> BindingSet
Trait Implementations§
Source§impl Clone for BoundPredicate
impl Clone for BoundPredicate
Source§impl Debug for BoundPredicate
impl Debug for BoundPredicate
impl Eq for BoundPredicate
Source§impl PartialEq for BoundPredicate
impl PartialEq for BoundPredicate
impl StructuralPartialEq for BoundPredicate
Auto Trait Implementations§
impl Freeze for BoundPredicate
impl RefUnwindSafe for BoundPredicate
impl Send for BoundPredicate
impl Sync for BoundPredicate
impl Unpin for BoundPredicate
impl UnsafeUnpin for BoundPredicate
impl UnwindSafe for BoundPredicate
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