Type Alias datafusion::physical_expr::sort_properties::ExprOrdering

source ·
pub type ExprOrdering = ExprContext<SortProperties>;
Expand description

The ExprOrdering struct is designed to aid in the determination of ordering (represented by SortProperties) for a given PhysicalExpr. When analyzing the orderings of a PhysicalExpr, the process begins by assigning the ordering of its leaf nodes. By propagating these leaf node orderings upwards in the expression tree, the overall ordering of the entire PhysicalExpr can be derived.

This struct holds the necessary state information for each expression in the PhysicalExpr. It encapsulates the orderings (data) associated with the expression (expr), and orderings of the children expressions (children). The ExprOrdering of a parent expression is determined based on the ExprOrdering states of its children expressions.

Aliased Type§

struct ExprOrdering {
    pub expr: Arc<dyn PhysicalExpr>,
    pub data: SortProperties,
    pub children: Vec<ExprContext<SortProperties>>,
}

Fields§

§expr: Arc<dyn PhysicalExpr>

The physical expression associated with this context.

§data: SortProperties

Custom data payload of the node.

§children: Vec<ExprContext<SortProperties>>

Child contexts of this node.