pub struct ScalarFunctionExpr { /* private fields */ }
Expand description
Physical expression of a scalar function
Implementations§
source§impl ScalarFunctionExpr
impl ScalarFunctionExpr
sourcepub fn new(
name: &str,
fun: ScalarFunctionImplementation,
args: Vec<Arc<dyn PhysicalExpr>>,
return_type: &DataType
) -> Self
pub fn new( name: &str, fun: ScalarFunctionImplementation, args: Vec<Arc<dyn PhysicalExpr>>, return_type: &DataType ) -> Self
Create a new Scalar function
sourcepub fn fun(&self) -> &ScalarFunctionImplementation
pub fn fun(&self) -> &ScalarFunctionImplementation
Get the scalar function implementation
sourcepub fn args(&self) -> &[Arc<dyn PhysicalExpr>]
pub fn args(&self) -> &[Arc<dyn PhysicalExpr>]
Input arguments
sourcepub fn return_type(&self) -> &DataType
pub fn return_type(&self) -> &DataType
Data type produced by this expression
Trait Implementations§
source§impl Debug for ScalarFunctionExpr
impl Debug for ScalarFunctionExpr
source§impl Display for ScalarFunctionExpr
impl Display for ScalarFunctionExpr
source§impl PartialEq<dyn Any + 'static> for ScalarFunctionExpr
impl PartialEq<dyn Any + 'static> for ScalarFunctionExpr
source§impl PhysicalExpr for ScalarFunctionExpr
impl PhysicalExpr for ScalarFunctionExpr
source§fn data_type(&self, _input_schema: &Schema) -> Result<DataType>
fn data_type(&self, _input_schema: &Schema) -> Result<DataType>
Get the data type of this expression, given the schema of the input
source§fn nullable(&self, _input_schema: &Schema) -> Result<bool>
fn nullable(&self, _input_schema: &Schema) -> Result<bool>
Determine whether this expression is nullable, given the schema of the input
source§fn evaluate(&self, batch: &RecordBatch) -> Result<ColumnarValue>
fn evaluate(&self, batch: &RecordBatch) -> Result<ColumnarValue>
Evaluate an expression against a RecordBatch
source§fn children(&self) -> Vec<Arc<dyn PhysicalExpr>> ⓘ
fn children(&self) -> Vec<Arc<dyn PhysicalExpr>> ⓘ
Get a list of child PhysicalExpr that provide the input for this expr.
source§fn with_new_children(
self: Arc<Self>,
children: Vec<Arc<dyn PhysicalExpr>>
) -> Result<Arc<dyn PhysicalExpr>>
fn with_new_children( self: Arc<Self>, children: Vec<Arc<dyn PhysicalExpr>> ) -> Result<Arc<dyn PhysicalExpr>>
Returns a new PhysicalExpr where all children were replaced by new exprs.
source§fn evaluate_selection(
&self,
batch: &RecordBatch,
selection: &BooleanArray
) -> Result<ColumnarValue>
fn evaluate_selection( &self, batch: &RecordBatch, selection: &BooleanArray ) -> Result<ColumnarValue>
Evaluate an expression against a RecordBatch after first applying a
validity array
source§fn analyze(&self, context: AnalysisContext) -> AnalysisContext
fn analyze(&self, context: AnalysisContext) -> AnalysisContext
Return the boundaries of this expression. This method (and all the
related APIs) are experimental and subject to change.