Trait ScalarQueryParser

Source
pub trait ScalarQueryParser:
    Debug
    + Send
    + Sync {
    // Required methods
    fn visit_between(
        &self,
        column: &str,
        low: ScalarValue,
        high: ScalarValue,
    ) -> Option<IndexedExpression>;
    fn visit_in_list(
        &self,
        column: &str,
        in_list: Vec<ScalarValue>,
    ) -> Option<IndexedExpression>;
    fn visit_is_bool(
        &self,
        column: &str,
        value: bool,
    ) -> Option<IndexedExpression>;
    fn visit_is_null(&self, column: &str) -> Option<IndexedExpression>;
    fn visit_comparison(
        &self,
        column: &str,
        value: ScalarValue,
        op: &Operator,
    ) -> Option<IndexedExpression>;
    fn visit_scalar_function(
        &self,
        column: &str,
        data_type: &DataType,
        func: &ScalarUDF,
        args: &[Expr],
    ) -> Option<IndexedExpression>;
}

Required Methods§

Source

fn visit_between( &self, column: &str, low: ScalarValue, high: ScalarValue, ) -> Option<IndexedExpression>

Source

fn visit_in_list( &self, column: &str, in_list: Vec<ScalarValue>, ) -> Option<IndexedExpression>

Source

fn visit_is_bool(&self, column: &str, value: bool) -> Option<IndexedExpression>

Source

fn visit_is_null(&self, column: &str) -> Option<IndexedExpression>

Source

fn visit_comparison( &self, column: &str, value: ScalarValue, op: &Operator, ) -> Option<IndexedExpression>

Source

fn visit_scalar_function( &self, column: &str, data_type: &DataType, func: &ScalarUDF, args: &[Expr], ) -> Option<IndexedExpression>

Implementors§