MCPcopy Create free account
hub / github.com/apache/datafusion / sql_position_to_expr

Method sql_position_to_expr

datafusion/sql/src/expr/mod.rs:736–757  ·  view source on GitHub ↗
(
        &self,
        substr_expr: SQLExpr,
        str_expr: SQLExpr,
        schema: &DFSchema,
        planner_context: &mut PlannerContext,
    )

Source from the content-addressed store, hash-verified

734 }
735
736 fn sql_position_to_expr(
737 &self,
738 substr_expr: SQLExpr,
739 str_expr: SQLExpr,
740 schema: &DFSchema,
741 planner_context: &mut PlannerContext,
742 ) -> Result<Expr> {
743 let substr =
744 self.sql_expr_to_logical_expr(substr_expr, schema, planner_context)?;
745 let fullstr = self.sql_expr_to_logical_expr(str_expr, schema, planner_context)?;
746 let mut position_args = vec![fullstr, substr];
747 for planner in self.context_provider.get_expr_planners() {
748 match planner.plan_position(position_args)? {
749 PlannerResult::Planned(expr) => return Ok(expr),
750 PlannerResult::Original(args) => {
751 position_args = args;
752 }
753 }
754 }
755
756 not_impl_err!("Position not supported by ExprPlanner: {position_args:?}")
757 }
758
759 fn try_plan_dictionary_literal(
760 &self,

Callers 1

Calls 3

get_expr_plannersMethod · 0.45
plan_positionMethod · 0.45

Tested by

no test coverage detected