pub struct UserDefinedFunctionPlanner;
Available on crate features
datetime_expressions
or unicode_expressions
only.Trait Implementations§
Source§impl Debug for UserDefinedFunctionPlanner
impl Debug for UserDefinedFunctionPlanner
Source§impl Default for UserDefinedFunctionPlanner
impl Default for UserDefinedFunctionPlanner
Source§fn default() -> UserDefinedFunctionPlanner
fn default() -> UserDefinedFunctionPlanner
Returns the “default value” for a type. Read more
Source§impl ExprPlanner for UserDefinedFunctionPlanner
impl ExprPlanner for UserDefinedFunctionPlanner
Source§fn plan_extract(&self, args: Vec<Expr>) -> Result<PlannerResult<Vec<Expr>>>
fn plan_extract(&self, args: Vec<Expr>) -> Result<PlannerResult<Vec<Expr>>>
Plan an extract expression, such as
EXTRACT(month FROM foo)
Read moreSource§fn plan_position(&self, args: Vec<Expr>) -> Result<PlannerResult<Vec<Expr>>>
fn plan_position(&self, args: Vec<Expr>) -> Result<PlannerResult<Vec<Expr>>>
Source§fn plan_substring(&self, args: Vec<Expr>) -> Result<PlannerResult<Vec<Expr>>>
fn plan_substring(&self, args: Vec<Expr>) -> Result<PlannerResult<Vec<Expr>>>
Plan an substring expression, such as
SUBSTRING(<expr> [FROM <expr>] [FOR <expr>])
Read moreSource§fn plan_binary_op(
&self,
expr: RawBinaryExpr,
_schema: &DFSchema,
) -> Result<PlannerResult<RawBinaryExpr>, DataFusionError>
fn plan_binary_op( &self, expr: RawBinaryExpr, _schema: &DFSchema, ) -> Result<PlannerResult<RawBinaryExpr>, DataFusionError>
Plan the binary operation between two expressions, returns original
BinaryExpr if not possible
Source§fn plan_field_access(
&self,
expr: RawFieldAccessExpr,
_schema: &DFSchema,
) -> Result<PlannerResult<RawFieldAccessExpr>, DataFusionError>
fn plan_field_access( &self, expr: RawFieldAccessExpr, _schema: &DFSchema, ) -> Result<PlannerResult<RawFieldAccessExpr>, DataFusionError>
Plan the field access expression, such as
foo.bar
Read moreSource§fn plan_array_literal(
&self,
exprs: Vec<Expr>,
_schema: &DFSchema,
) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
fn plan_array_literal( &self, exprs: Vec<Expr>, _schema: &DFSchema, ) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
Plan an array literal, such as
[1, 2, 3]
Read moreSource§fn plan_dictionary_literal(
&self,
expr: RawDictionaryExpr,
_schema: &DFSchema,
) -> Result<PlannerResult<RawDictionaryExpr>, DataFusionError>
fn plan_dictionary_literal( &self, expr: RawDictionaryExpr, _schema: &DFSchema, ) -> Result<PlannerResult<RawDictionaryExpr>, DataFusionError>
Plan a dictionary literal, such as
{ key: value, ...}
Read moreSource§fn plan_struct_literal(
&self,
args: Vec<Expr>,
_is_named_struct: bool,
) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
fn plan_struct_literal( &self, args: Vec<Expr>, _is_named_struct: bool, ) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
Plans a struct literal, such as
{'field1' : expr1, 'field2' : expr2, ...}
Read moreSource§fn plan_overlay(
&self,
args: Vec<Expr>,
) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
fn plan_overlay( &self, args: Vec<Expr>, ) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
Plans an overlay expression, such as
overlay(str PLACING substr FROM pos [FOR count])
Read moreSource§fn plan_make_map(
&self,
args: Vec<Expr>,
) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
fn plan_make_map( &self, args: Vec<Expr>, ) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
Source§fn plan_compound_identifier(
&self,
_field: &Field,
_qualifier: Option<&TableReference>,
_nested_names: &[String],
) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
fn plan_compound_identifier( &self, _field: &Field, _qualifier: Option<&TableReference>, _nested_names: &[String], ) -> Result<PlannerResult<Vec<Expr>>, DataFusionError>
Plans compound identifier such as
db.schema.table
for non-empty nested names Read moreSource§fn plan_any(
&self,
expr: RawBinaryExpr,
) -> Result<PlannerResult<RawBinaryExpr>, DataFusionError>
fn plan_any( &self, expr: RawBinaryExpr, ) -> Result<PlannerResult<RawBinaryExpr>, DataFusionError>
Source§fn plan_aggregate(
&self,
expr: RawAggregateExpr,
) -> Result<PlannerResult<RawAggregateExpr>, DataFusionError>
fn plan_aggregate( &self, expr: RawAggregateExpr, ) -> Result<PlannerResult<RawAggregateExpr>, DataFusionError>
Plans aggregate functions, such as
COUNT(<expr>)
Read moreSource§fn plan_window(
&self,
expr: RawWindowExpr,
) -> Result<PlannerResult<RawWindowExpr>, DataFusionError>
fn plan_window( &self, expr: RawWindowExpr, ) -> Result<PlannerResult<RawWindowExpr>, DataFusionError>
Plans window functions, such as
COUNT(<expr>)
Read moreAuto Trait Implementations§
impl Freeze for UserDefinedFunctionPlanner
impl RefUnwindSafe for UserDefinedFunctionPlanner
impl Send for UserDefinedFunctionPlanner
impl Sync for UserDefinedFunctionPlanner
impl Unpin for UserDefinedFunctionPlanner
impl UnwindSafe for UserDefinedFunctionPlanner
Blanket Implementations§
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more