pub struct PlanNode {
pub id: PlanNodeId,
pub kind: PlanOperator,
pub inputs: Vec<PlanInput>,
pub outputs: Vec<PlanNodeId>,
pub schema: Vec<PlanField>,
pub predicates: Vec<PlanExpression>,
pub projections: Vec<PlanExpression>,
pub cost: Option<f64>,
pub cardinality: Option<u64>,
pub chosen_index: Option<String>,
pub metadata: PlanNodeMetadata,
}Expand description
Planner node with annotations used to describe how operators compose.
Fields§
§id: PlanNodeId§kind: PlanOperator§inputs: Vec<PlanInput>§outputs: Vec<PlanNodeId>§schema: Vec<PlanField>§predicates: Vec<PlanExpression>§projections: Vec<PlanExpression>§cost: Option<f64>§cardinality: Option<u64>§chosen_index: Option<String>§metadata: PlanNodeMetadataImplementations§
Source§impl PlanNode
impl PlanNode
pub fn new(id: PlanNodeId, kind: PlanOperator) -> Self
pub fn add_field(&mut self, field: PlanField)
pub fn add_predicate(&mut self, expr: PlanExpression)
pub fn add_projection(&mut self, expr: PlanExpression)
Trait Implementations§
Source§impl<'de> Deserialize<'de> for PlanNode
impl<'de> Deserialize<'de> for PlanNode
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for PlanNode
Auto Trait Implementations§
impl Freeze for PlanNode
impl RefUnwindSafe for PlanNode
impl Send for PlanNode
impl Sync for PlanNode
impl Unpin for PlanNode
impl UnsafeUnpin for PlanNode
impl UnwindSafe for PlanNode
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more