pub type ExprRef = Arc<dyn VortexExpr>;Aliased Type§
pub struct ExprRef { /* private fields */ }Trait Implementations§
Source§impl From<BetweenExpr> for ExprRef
impl From<BetweenExpr> for ExprRef
Source§fn from(value: BetweenExpr) -> ExprRef
fn from(value: BetweenExpr) -> ExprRef
Converts to this type from the input type.
Source§impl From<BinaryExpr> for ExprRef
impl From<BinaryExpr> for ExprRef
Source§fn from(value: BinaryExpr) -> ExprRef
fn from(value: BinaryExpr) -> ExprRef
Converts to this type from the input type.
Source§impl From<DynamicComparisonExpr> for ExprRef
impl From<DynamicComparisonExpr> for ExprRef
Source§fn from(value: DynamicComparisonExpr) -> ExprRef
fn from(value: DynamicComparisonExpr) -> ExprRef
Converts to this type from the input type.
Source§impl From<GetItemExpr> for ExprRef
impl From<GetItemExpr> for ExprRef
Source§fn from(value: GetItemExpr) -> ExprRef
fn from(value: GetItemExpr) -> ExprRef
Converts to this type from the input type.
Source§impl From<IsNullExpr> for ExprRef
impl From<IsNullExpr> for ExprRef
Source§fn from(value: IsNullExpr) -> ExprRef
fn from(value: IsNullExpr) -> ExprRef
Converts to this type from the input type.
Source§impl From<ListContainsExpr> for ExprRef
impl From<ListContainsExpr> for ExprRef
Source§fn from(value: ListContainsExpr) -> ExprRef
fn from(value: ListContainsExpr) -> ExprRef
Converts to this type from the input type.
Source§impl From<LiteralExpr> for ExprRef
impl From<LiteralExpr> for ExprRef
Source§fn from(value: LiteralExpr) -> ExprRef
fn from(value: LiteralExpr) -> ExprRef
Converts to this type from the input type.
Source§impl From<SelectExpr> for ExprRef
impl From<SelectExpr> for ExprRef
Source§fn from(value: SelectExpr) -> ExprRef
fn from(value: SelectExpr) -> ExprRef
Converts to this type from the input type.
Source§impl Node for ExprRef
impl Node for ExprRef
Source§fn apply_children<'a, F: FnMut(&'a Self) -> VortexResult<TraversalOrder>>(
&'a self,
f: F,
) -> VortexResult<TraversalOrder>
fn apply_children<'a, F: FnMut(&'a Self) -> VortexResult<TraversalOrder>>( &'a self, f: F, ) -> VortexResult<TraversalOrder>
Walk the node’s children by applying
f to them. Read moreSource§fn map_children<F: FnMut(Self) -> VortexResult<Transformed<Self>>>(
self,
f: F,
) -> VortexResult<Transformed<Self>>
fn map_children<F: FnMut(Self) -> VortexResult<Transformed<Self>>>( self, f: F, ) -> VortexResult<Transformed<Self>>
Rewrite the node’s children by applying
f to them. Read moreSource§fn rewrite<R: NodeRewriter<NodeTy = Self>>(
self,
rewriter: &mut R,
) -> VortexResult<Transformed<Self>>
fn rewrite<R: NodeRewriter<NodeTy = Self>>( self, rewriter: &mut R, ) -> VortexResult<Transformed<Self>>
Walk the tree in pre-order (top-down) way, rewriting it as it goes.
Source§fn accept<'a, V: NodeVisitor<'a, NodeTy = Self>>(
&'a self,
visitor: &mut V,
) -> VortexResult<TraversalOrder>
fn accept<'a, V: NodeVisitor<'a, NodeTy = Self>>( &'a self, visitor: &mut V, ) -> VortexResult<TraversalOrder>
A pre-order (top-down) traversal.
Source§fn transform_down<F: FnMut(Self) -> VortexResult<Transformed<Self>>>(
self,
f: F,
) -> VortexResult<Transformed<Self>>
fn transform_down<F: FnMut(Self) -> VortexResult<Transformed<Self>>>( self, f: F, ) -> VortexResult<Transformed<Self>>
A pre-order transformation
Source§fn transform_up<F: FnMut(Self) -> VortexResult<Transformed<Self>>>(
self,
f: F,
) -> VortexResult<Transformed<Self>>
fn transform_up<F: FnMut(Self) -> VortexResult<Transformed<Self>>>( self, f: F, ) -> VortexResult<Transformed<Self>>
A post-order transform
Source§impl<'a> NodeContainer<'a, Arc<dyn VortexExpr>> for ExprRef
impl<'a> NodeContainer<'a, Arc<dyn VortexExpr>> for ExprRef
Source§fn apply_elements<F: FnMut(&'a Self) -> VortexResult<TraversalOrder>>(
&'a self,
f: F,
) -> VortexResult<TraversalOrder>
fn apply_elements<F: FnMut(&'a Self) -> VortexResult<TraversalOrder>>( &'a self, f: F, ) -> VortexResult<TraversalOrder>
Applies
f to all elements of the container, accepting them by referenceSource§fn map_elements<F: FnMut(Self) -> VortexResult<Transformed<Self>>>(
self,
f: F,
) -> VortexResult<Transformed<Self>>
fn map_elements<F: FnMut(Self) -> VortexResult<Transformed<Self>>>( self, f: F, ) -> VortexResult<Transformed<Self>>
Consumes all the children of the node, replacing them with the result of
f.Source§impl VortexExprExt for ExprRef
impl VortexExprExt for ExprRef
Source§fn field_references(&self) -> HashSet<FieldName>
fn field_references(&self) -> HashSet<FieldName>
Accumulate all field references from this expression and its children in a set