pub enum QueryExpr<L> {
And(Vec<QueryExpr<L>>),
Or(Vec<QueryExpr<L>>),
Not(Box<QueryExpr<L>>),
Leaf(L),
}Expand description
A boolean expression tree over leaves of type L.
The tokenizer/parser produce QueryExpr<String> (leaves are raw atom
strings); Frontend::parse_atom expands each atom into a
QueryExpr<QueryLeaf> sub-tree (a range atom becomes an And of two
bounds, a value group becomes an Or, and so on).
Variants§
Trait Implementations§
impl<L: PartialEq> StructuralPartialEq for QueryExpr<L>
Auto Trait Implementations§
impl<L> Freeze for QueryExpr<L>
impl<L> RefUnwindSafe for QueryExpr<L>
impl<L> Send for QueryExpr<L>
impl<L> Sync for QueryExpr<L>
impl<L> Unpin for QueryExpr<L>
impl<L> UnsafeUnpin for QueryExpr<L>
impl<L> UnwindSafe for QueryExpr<L>
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