fn project(&self, input: &PlanNode, exprs: &[Expression]) -> Result<PlanNode> {
        let exprs = exprs
            .iter()
            .map(|expr| rebase_expr_from_input(expr, &input.schema()))
            .collect::<Result<Vec<_>>>()?;

        PlanBuilder::from(input)
            .project(&exprs)
            .and_then(|builder| builder.build())
    }
/// Wrap a plan in a projection
Wrap a plan in a projection
Wrap a plan in a projection
fn project(&self, input: &PlanNode, exprs: &[Expression]) -> Result<PlanNode> {
        let exprs = exprs
            .iter()
            .map(|expr| rebase_expr_from_input(expr, &input.schema()))
            .collect::<Result<Vec<_>>>()?;
        PlanBuilder::from(input)
            .project(&exprs)
            .and_then(|builder| builder.build())
    }
fn project ( & self , input : & PlanNode , exprs : & [ Expression ] ) -> Result < PlanNode > { let exprs = exprs . iter ( ) . map ( | expr | rebase_expr_from_input ( expr , & input . schema ( ) ) ) . collect :: < Result < Vec < _ > > > ( ) ? ; PlanBuilder :: from ( input ) . project ( & exprs ) . and_then ( | builder | builder . build ( ) ) }
Wrap a plan in a projection
Wrap a plan in a projection
&self
input
&PlanNode
exprs
&[Expression]
&self
input
&PlanNode
exprs
&[Expression]