risingwave_frontend::optimizer::plan_node::plan_tree_node

Trait PlanTreeNodeUnary

source
pub trait PlanTreeNodeUnary {
    // Required methods
    fn input(&self) -> PlanRef;
    fn clone_with_input(&self, input: PlanRef) -> Self;

    // Provided method
    fn rewrite_with_input(
        &self,
        _input: PlanRef,
        _input_col_change: ColIndexMapping,
    ) -> (Self, ColIndexMapping)
       where Self: Sized { ... }
}
Expand description

Required Methods§

source

fn input(&self) -> PlanRef

source

fn clone_with_input(&self, input: PlanRef) -> Self

Provided Methods§

source

fn rewrite_with_input( &self, _input: PlanRef, _input_col_change: ColIndexMapping, ) -> (Self, ColIndexMapping)
where Self: Sized,

Rewrites the plan node according to the schema change of its input node during rewriting.

This function can be used to implement prune_col or logical_rewrite_for_stream

Object Safety§

This trait is not object safe.

Implementors§

source§

impl PlanTreeNodeUnary for BatchDelete

source§

impl PlanTreeNodeUnary for BatchExchange

source§

impl PlanTreeNodeUnary for BatchExpand

source§

impl PlanTreeNodeUnary for BatchFilter

source§

impl PlanTreeNodeUnary for BatchGroupTopN

source§

impl PlanTreeNodeUnary for BatchHashAgg

source§

impl PlanTreeNodeUnary for BatchHopWindow

source§

impl PlanTreeNodeUnary for BatchInsert

source§

impl PlanTreeNodeUnary for BatchLimit

source§

impl PlanTreeNodeUnary for BatchLookupJoin

source§

impl PlanTreeNodeUnary for BatchMaxOneRow

source§

impl PlanTreeNodeUnary for BatchOverWindow

source§

impl PlanTreeNodeUnary for BatchProject

source§

impl PlanTreeNodeUnary for BatchProjectSet

source§

impl PlanTreeNodeUnary for BatchSimpleAgg

source§

impl PlanTreeNodeUnary for BatchSort

source§

impl PlanTreeNodeUnary for BatchSortAgg

source§

impl PlanTreeNodeUnary for BatchTopN

source§

impl PlanTreeNodeUnary for BatchUpdate

source§

impl PlanTreeNodeUnary for LogicalAgg

source§

impl PlanTreeNodeUnary for LogicalChangeLog

source§

impl PlanTreeNodeUnary for LogicalDedup

source§

impl PlanTreeNodeUnary for LogicalDelete

source§

impl PlanTreeNodeUnary for LogicalExpand

source§

impl PlanTreeNodeUnary for LogicalFilter

source§

impl PlanTreeNodeUnary for LogicalHopWindow

source§

impl PlanTreeNodeUnary for LogicalInsert

source§

impl PlanTreeNodeUnary for LogicalLimit

source§

impl PlanTreeNodeUnary for LogicalMaxOneRow

source§

impl PlanTreeNodeUnary for LogicalOverWindow

source§

impl PlanTreeNodeUnary for LogicalProject

source§

impl PlanTreeNodeUnary for LogicalProjectSet

source§

impl PlanTreeNodeUnary for LogicalShare

source§

impl PlanTreeNodeUnary for LogicalTopN

source§

impl PlanTreeNodeUnary for LogicalUpdate

source§

impl PlanTreeNodeUnary for StreamChangeLog

source§

impl PlanTreeNodeUnary for StreamDedup

source§

impl PlanTreeNodeUnary for StreamDml

source§

impl PlanTreeNodeUnary for StreamEowcOverWindow

source§

impl PlanTreeNodeUnary for StreamExchange

source§

impl PlanTreeNodeUnary for StreamExpand

source§

impl PlanTreeNodeUnary for StreamFilter

source§

impl PlanTreeNodeUnary for StreamFsFetch

source§

impl PlanTreeNodeUnary for StreamGlobalApproxPercentile

source§

impl PlanTreeNodeUnary for StreamGroupTopN

source§

impl PlanTreeNodeUnary for StreamHashAgg

source§

impl PlanTreeNodeUnary for StreamHopWindow

source§

impl PlanTreeNodeUnary for StreamLocalApproxPercentile

source§

impl PlanTreeNodeUnary for StreamMaterialize

source§

impl PlanTreeNodeUnary for StreamOverWindow

source§

impl PlanTreeNodeUnary for StreamProject

source§

impl PlanTreeNodeUnary for StreamProjectSet

source§

impl PlanTreeNodeUnary for StreamRowIdGen

source§

impl PlanTreeNodeUnary for StreamShare

source§

impl PlanTreeNodeUnary for StreamSimpleAgg

source§

impl PlanTreeNodeUnary for StreamSink

source§

impl PlanTreeNodeUnary for StreamEowcSort

source§

impl PlanTreeNodeUnary for StreamStatelessSimpleAgg

source§

impl PlanTreeNodeUnary for StreamTopN

source§

impl PlanTreeNodeUnary for StreamWatermarkFilter