pub trait StreamPlanNode: PlanNodeCommon<Stream> + TryToStreamPb { }Expand description
The common trait over all plan nodes. Used by optimizer framework which will treat all node as
dyn PlanNode
We split the trait into lots of sub-trait so that we can easily use macro to impl them.
Implementations§
Source§impl dyn StreamPlanNode
impl dyn StreamPlanNode
Sourcepub fn is<__T: StreamPlanNode>(&self) -> bool
pub fn is<__T: StreamPlanNode>(&self) -> bool
Returns true if the trait object wraps an object of type __T.
Sourcepub fn downcast<__T: StreamPlanNode>(
self: Box<Self>,
) -> Result<Box<__T>, Box<Self>>
pub fn downcast<__T: StreamPlanNode>( self: Box<Self>, ) -> Result<Box<__T>, Box<Self>>
Returns a boxed object from a boxed trait object if the underlying object is of type
__T. Returns the original boxed trait if it isn’t.
Sourcepub fn downcast_rc<__T: StreamPlanNode>(
self: Rc<Self>,
) -> Result<Rc<__T>, Rc<Self>>
pub fn downcast_rc<__T: StreamPlanNode>( self: Rc<Self>, ) -> Result<Rc<__T>, Rc<Self>>
Returns an Rc-ed object from an Rc-ed trait object if the underlying object is of
type __T. Returns the original Rc-ed trait if it isn’t.
Sourcepub fn downcast_ref<__T: StreamPlanNode>(&self) -> Option<&__T>
pub fn downcast_ref<__T: StreamPlanNode>(&self) -> Option<&__T>
Returns a reference to the object within the trait object if it is of type __T, or
None if it isn’t.
Sourcepub fn downcast_mut<__T: StreamPlanNode>(&mut self) -> Option<&mut __T>
pub fn downcast_mut<__T: StreamPlanNode>(&mut self) -> Option<&mut __T>
Returns a mutable reference to the object within the trait object if it is of type
__T, or None if it isn’t.
Source§impl dyn StreamPlanNode
Directly implement methods for PlanNode to access the fields defined in GenericPlanRef.
impl dyn StreamPlanNode
Directly implement methods for PlanNode to access the fields defined in GenericPlanRef.
pub fn id(&self) -> PlanNodeId
pub fn ctx(&self) -> OptimizerContextRef
pub fn schema(&self) -> &Schema
pub fn stream_key(&self) -> Option<&[usize]>
pub fn functional_dependency(&self) -> &FunctionalDependencySet
pub fn explain_myself_to_string(&self) -> String
Source§impl dyn StreamPlanNode
impl dyn StreamPlanNode
Sourcepub fn to_stream_prost(
&self,
state: &mut BuildFragmentGraphState,
) -> Result<PbStreamPlan, SchedulerError>
pub fn to_stream_prost( &self, state: &mut BuildFragmentGraphState, ) -> Result<PbStreamPlan, SchedulerError>
Serialize the plan node and its children to a stream plan proto.
Note that some operators has their own implementation of to_stream_prost. We have a
hook inside to do some ad-hoc things.