Skip to main content

StreamPlanVisitor

Trait StreamPlanVisitor 

Source
pub trait StreamPlanVisitor {
    type Result;
    type DefaultBehavior: DefaultBehavior<Self::Result>;

Show 50 methods // Required method fn default_behavior() -> Self::DefaultBehavior; // Provided methods fn visit_stream(&mut self, plan: PlanRef<Stream>) -> Self::Result { ... } fn visit_stream_project(&mut self, plan: &StreamProject) -> Self::Result { ... } fn visit_stream_filter(&mut self, plan: &StreamFilter) -> Self::Result { ... } fn visit_stream_table_scan( &mut self, plan: &StreamTableScan, ) -> Self::Result { ... } fn visit_stream_cdc_table_scan( &mut self, plan: &StreamCdcTableScan, ) -> Self::Result { ... } fn visit_stream_sink(&mut self, plan: &StreamSink) -> Self::Result { ... } fn visit_stream_source(&mut self, plan: &StreamSource) -> Self::Result { ... } fn visit_stream_source_scan( &mut self, plan: &StreamSourceScan, ) -> Self::Result { ... } fn visit_stream_hash_join(&mut self, plan: &StreamHashJoin) -> Self::Result { ... } fn visit_stream_exchange(&mut self, plan: &StreamExchange) -> Self::Result { ... } fn visit_stream_hash_agg(&mut self, plan: &StreamHashAgg) -> Self::Result { ... } fn visit_stream_simple_agg( &mut self, plan: &StreamSimpleAgg, ) -> Self::Result { ... } fn visit_stream_stateless_simple_agg( &mut self, plan: &StreamStatelessSimpleAgg, ) -> Self::Result { ... } fn visit_stream_materialize( &mut self, plan: &StreamMaterialize, ) -> Self::Result { ... } fn visit_stream_top_n(&mut self, plan: &StreamTopN) -> Self::Result { ... } fn visit_stream_hop_window( &mut self, plan: &StreamHopWindow, ) -> Self::Result { ... } fn visit_stream_delta_join( &mut self, plan: &StreamDeltaJoin, ) -> Self::Result { ... } fn visit_stream_expand(&mut self, plan: &StreamExpand) -> Self::Result { ... } fn visit_stream_dynamic_filter( &mut self, plan: &StreamDynamicFilter, ) -> Self::Result { ... } fn visit_stream_project_set( &mut self, plan: &StreamProjectSet, ) -> Self::Result { ... } fn visit_stream_group_top_n( &mut self, plan: &StreamGroupTopN, ) -> Self::Result { ... } fn visit_stream_union(&mut self, plan: &StreamUnion) -> Self::Result { ... } fn visit_stream_row_id_gen(&mut self, plan: &StreamRowIdGen) -> Self::Result { ... } fn visit_stream_dml(&mut self, plan: &StreamDml) -> Self::Result { ... } fn visit_stream_now(&mut self, plan: &StreamNow) -> Self::Result { ... } fn visit_stream_share(&mut self, plan: &StreamShare) -> Self::Result { ... } fn visit_stream_watermark_filter( &mut self, plan: &StreamWatermarkFilter, ) -> Self::Result { ... } fn visit_stream_temporal_join( &mut self, plan: &StreamTemporalJoin, ) -> Self::Result { ... } fn visit_stream_values(&mut self, plan: &StreamValues) -> Self::Result { ... } fn visit_stream_dedup(&mut self, plan: &StreamDedup) -> Self::Result { ... } fn visit_stream_eowc_over_window( &mut self, plan: &StreamEowcOverWindow, ) -> Self::Result { ... } fn visit_stream_eowc_sort(&mut self, plan: &StreamEowcSort) -> Self::Result { ... } fn visit_stream_over_window( &mut self, plan: &StreamOverWindow, ) -> Self::Result { ... } fn visit_stream_fs_fetch(&mut self, plan: &StreamFsFetch) -> Self::Result { ... } fn visit_stream_change_log( &mut self, plan: &StreamChangeLog, ) -> Self::Result { ... } fn visit_stream_global_approx_percentile( &mut self, plan: &StreamGlobalApproxPercentile, ) -> Self::Result { ... } fn visit_stream_local_approx_percentile( &mut self, plan: &StreamLocalApproxPercentile, ) -> Self::Result { ... } fn visit_stream_row_merge(&mut self, plan: &StreamRowMerge) -> Self::Result { ... } fn visit_stream_as_of_join(&mut self, plan: &StreamAsOfJoin) -> Self::Result { ... } fn visit_stream_sync_log_store( &mut self, plan: &StreamSyncLogStore, ) -> Self::Result { ... } fn visit_stream_materialized_exprs( &mut self, plan: &StreamMaterializedExprs, ) -> Self::Result { ... } fn visit_stream_vector_index_write( &mut self, plan: &StreamVectorIndexWrite, ) -> Self::Result { ... } fn visit_stream_vector_index_lookup_join( &mut self, plan: &StreamVectorIndexLookupJoin, ) -> Self::Result { ... } fn visit_stream_upstream_sink_union( &mut self, plan: &StreamUpstreamSinkUnion, ) -> Self::Result { ... } fn visit_stream_locality_provider( &mut self, plan: &StreamLocalityProvider, ) -> Self::Result { ... } fn visit_stream_eowc_gap_fill( &mut self, plan: &StreamEowcGapFill, ) -> Self::Result { ... } fn visit_stream_gap_fill(&mut self, plan: &StreamGapFill) -> Self::Result { ... } fn visit_stream_iceberg_with_pk_index_writer( &mut self, plan: &StreamIcebergWithPkIndexWriter, ) -> Self::Result { ... } fn visit_stream_iceberg_with_pk_index_dv_merger( &mut self, plan: &StreamIcebergWithPkIndexDvMerger, ) -> Self::Result { ... }
}
Expand description

The visitor for plan nodes. visit all inputs and return the ret value of the left most input, and leaf node returns R::default()

Required Associated Types§

Required Methods§

Source

fn default_behavior() -> Self::DefaultBehavior

The behavior for the default implementations of visit_xxx.

Provided Methods§

Source

fn visit_stream(&mut self, plan: PlanRef<Stream>) -> Self::Result

Source

fn visit_stream_project(&mut self, plan: &StreamProject) -> Self::Result

Visit StreamProject , the function should visit the inputs.

Source

fn visit_stream_filter(&mut self, plan: &StreamFilter) -> Self::Result

Visit StreamFilter , the function should visit the inputs.

Source

fn visit_stream_table_scan(&mut self, plan: &StreamTableScan) -> Self::Result

Visit StreamTableScan , the function should visit the inputs.

Source

fn visit_stream_cdc_table_scan( &mut self, plan: &StreamCdcTableScan, ) -> Self::Result

Visit StreamCdcTableScan , the function should visit the inputs.

Source

fn visit_stream_sink(&mut self, plan: &StreamSink) -> Self::Result

Visit StreamSink , the function should visit the inputs.

Source

fn visit_stream_source(&mut self, plan: &StreamSource) -> Self::Result

Visit StreamSource , the function should visit the inputs.

Source

fn visit_stream_source_scan(&mut self, plan: &StreamSourceScan) -> Self::Result

Visit StreamSourceScan , the function should visit the inputs.

Source

fn visit_stream_hash_join(&mut self, plan: &StreamHashJoin) -> Self::Result

Visit StreamHashJoin , the function should visit the inputs.

Source

fn visit_stream_exchange(&mut self, plan: &StreamExchange) -> Self::Result

Visit StreamExchange , the function should visit the inputs.

Source

fn visit_stream_hash_agg(&mut self, plan: &StreamHashAgg) -> Self::Result

Visit StreamHashAgg , the function should visit the inputs.

Source

fn visit_stream_simple_agg(&mut self, plan: &StreamSimpleAgg) -> Self::Result

Visit StreamSimpleAgg , the function should visit the inputs.

Source

fn visit_stream_stateless_simple_agg( &mut self, plan: &StreamStatelessSimpleAgg, ) -> Self::Result

Visit StreamStatelessSimpleAgg , the function should visit the inputs.

Source

fn visit_stream_materialize(&mut self, plan: &StreamMaterialize) -> Self::Result

Visit StreamMaterialize , the function should visit the inputs.

Source

fn visit_stream_top_n(&mut self, plan: &StreamTopN) -> Self::Result

Visit StreamTopN , the function should visit the inputs.

Source

fn visit_stream_hop_window(&mut self, plan: &StreamHopWindow) -> Self::Result

Visit StreamHopWindow , the function should visit the inputs.

Source

fn visit_stream_delta_join(&mut self, plan: &StreamDeltaJoin) -> Self::Result

Visit StreamDeltaJoin , the function should visit the inputs.

Source

fn visit_stream_expand(&mut self, plan: &StreamExpand) -> Self::Result

Visit StreamExpand , the function should visit the inputs.

Source

fn visit_stream_dynamic_filter( &mut self, plan: &StreamDynamicFilter, ) -> Self::Result

Visit StreamDynamicFilter , the function should visit the inputs.

Source

fn visit_stream_project_set(&mut self, plan: &StreamProjectSet) -> Self::Result

Visit StreamProjectSet , the function should visit the inputs.

Source

fn visit_stream_group_top_n(&mut self, plan: &StreamGroupTopN) -> Self::Result

Visit StreamGroupTopN , the function should visit the inputs.

Source

fn visit_stream_union(&mut self, plan: &StreamUnion) -> Self::Result

Visit StreamUnion , the function should visit the inputs.

Source

fn visit_stream_row_id_gen(&mut self, plan: &StreamRowIdGen) -> Self::Result

Visit StreamRowIdGen , the function should visit the inputs.

Source

fn visit_stream_dml(&mut self, plan: &StreamDml) -> Self::Result

Visit StreamDml , the function should visit the inputs.

Source

fn visit_stream_now(&mut self, plan: &StreamNow) -> Self::Result

Visit StreamNow , the function should visit the inputs.

Source

fn visit_stream_share(&mut self, plan: &StreamShare) -> Self::Result

Visit StreamShare , the function should visit the inputs.

Source

fn visit_stream_watermark_filter( &mut self, plan: &StreamWatermarkFilter, ) -> Self::Result

Visit StreamWatermarkFilter , the function should visit the inputs.

Source

fn visit_stream_temporal_join( &mut self, plan: &StreamTemporalJoin, ) -> Self::Result

Visit StreamTemporalJoin , the function should visit the inputs.

Source

fn visit_stream_values(&mut self, plan: &StreamValues) -> Self::Result

Visit StreamValues , the function should visit the inputs.

Source

fn visit_stream_dedup(&mut self, plan: &StreamDedup) -> Self::Result

Visit StreamDedup , the function should visit the inputs.

Source

fn visit_stream_eowc_over_window( &mut self, plan: &StreamEowcOverWindow, ) -> Self::Result

Visit StreamEowcOverWindow , the function should visit the inputs.

Source

fn visit_stream_eowc_sort(&mut self, plan: &StreamEowcSort) -> Self::Result

Visit StreamEowcSort , the function should visit the inputs.

Source

fn visit_stream_over_window(&mut self, plan: &StreamOverWindow) -> Self::Result

Visit StreamOverWindow , the function should visit the inputs.

Source

fn visit_stream_fs_fetch(&mut self, plan: &StreamFsFetch) -> Self::Result

Visit StreamFsFetch , the function should visit the inputs.

Source

fn visit_stream_change_log(&mut self, plan: &StreamChangeLog) -> Self::Result

Visit StreamChangeLog , the function should visit the inputs.

Source

fn visit_stream_global_approx_percentile( &mut self, plan: &StreamGlobalApproxPercentile, ) -> Self::Result

Visit StreamGlobalApproxPercentile , the function should visit the inputs.

Source

fn visit_stream_local_approx_percentile( &mut self, plan: &StreamLocalApproxPercentile, ) -> Self::Result

Visit StreamLocalApproxPercentile , the function should visit the inputs.

Source

fn visit_stream_row_merge(&mut self, plan: &StreamRowMerge) -> Self::Result

Visit StreamRowMerge , the function should visit the inputs.

Source

fn visit_stream_as_of_join(&mut self, plan: &StreamAsOfJoin) -> Self::Result

Visit StreamAsOfJoin , the function should visit the inputs.

Source

fn visit_stream_sync_log_store( &mut self, plan: &StreamSyncLogStore, ) -> Self::Result

Visit StreamSyncLogStore , the function should visit the inputs.

Source

fn visit_stream_materialized_exprs( &mut self, plan: &StreamMaterializedExprs, ) -> Self::Result

Visit StreamMaterializedExprs , the function should visit the inputs.

Source

fn visit_stream_vector_index_write( &mut self, plan: &StreamVectorIndexWrite, ) -> Self::Result

Visit StreamVectorIndexWrite , the function should visit the inputs.

Source

fn visit_stream_vector_index_lookup_join( &mut self, plan: &StreamVectorIndexLookupJoin, ) -> Self::Result

Visit StreamVectorIndexLookupJoin , the function should visit the inputs.

Source

fn visit_stream_upstream_sink_union( &mut self, plan: &StreamUpstreamSinkUnion, ) -> Self::Result

Visit StreamUpstreamSinkUnion , the function should visit the inputs.

Source

fn visit_stream_locality_provider( &mut self, plan: &StreamLocalityProvider, ) -> Self::Result

Visit StreamLocalityProvider , the function should visit the inputs.

Source

fn visit_stream_eowc_gap_fill( &mut self, plan: &StreamEowcGapFill, ) -> Self::Result

Visit StreamEowcGapFill , the function should visit the inputs.

Source

fn visit_stream_gap_fill(&mut self, plan: &StreamGapFill) -> Self::Result

Visit StreamGapFill , the function should visit the inputs.

Source

fn visit_stream_iceberg_with_pk_index_writer( &mut self, plan: &StreamIcebergWithPkIndexWriter, ) -> Self::Result

Visit StreamIcebergWithPkIndexWriter , the function should visit the inputs.

Source

fn visit_stream_iceberg_with_pk_index_dv_merger( &mut self, plan: &StreamIcebergWithPkIndexDvMerger, ) -> Self::Result

Visit StreamIcebergWithPkIndexDvMerger , the function should visit the inputs.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§