Enum spacetimedb_vm::expr::Query
source · pub enum Query {
IndexScan(IndexScan),
IndexJoin(IndexJoin),
Select(ColumnOp),
Project(Vec<FieldExpr>, Option<TableId>),
JoinInner(JoinExpr),
}Variants§
IndexScan(IndexScan)
IndexJoin(IndexJoin)
Select(ColumnOp)
Project(Vec<FieldExpr>, Option<TableId>)
JoinInner(JoinExpr)
Implementations§
source§impl Query
impl Query
sourcepub fn walk_sources<E>(
&self,
on_source: &mut impl FnMut(&SourceExpr) -> Result<(), E>
) -> Result<(), E>
pub fn walk_sources<E>( &self, on_source: &mut impl FnMut(&SourceExpr) -> Result<(), E> ) -> Result<(), E>
Iterate over all SourceExprs involved in the Query.
Sources are yielded from left to right. Duplicates are not filtered out.
Trait Implementations§
source§impl AuthAccess for Query
impl AuthAccess for Query
source§impl PartialEq for Query
impl PartialEq for Query
impl Eq for Query
impl StructuralPartialEq for Query
Auto Trait Implementations§
impl Freeze for Query
impl RefUnwindSafe for Query
impl Send for Query
impl Sync for Query
impl Unpin for Query
impl UnwindSafe for Query
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
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more