pub trait SimplifyInfo {
    // Required methods
    fn is_boolean_type(&self, expr: &Expr) -> Result<bool, DataFusionError>;
    fn nullable(&self, expr: &Expr) -> Result<bool, DataFusionError>;
    fn execution_props(&self) -> &ExecutionProps;
    fn get_data_type(&self, expr: &Expr) -> Result<DataType, DataFusionError>;
}
Expand description

Provides the information necessary to apply algebraic simplification to an Expr. See SimplifyContext for one concrete implementation.

This trait exists so that other systems can plug schema information in without having to create DFSchema objects. If you have a DFSchemaRef you can use SimplifyContext

Required Methods§

source

fn is_boolean_type(&self, expr: &Expr) -> Result<bool, DataFusionError>

returns true if this Expr has boolean type

source

fn nullable(&self, expr: &Expr) -> Result<bool, DataFusionError>

returns true of this expr is nullable (could possibly be NULL)

source

fn execution_props(&self) -> &ExecutionProps

Returns details needed for partial expression evaluation

source

fn get_data_type(&self, expr: &Expr) -> Result<DataType, DataFusionError>

Returns data type of this expr needed for determining optimized int type of a value

Implementors§