Skip to content

Commit

Permalink
chore: Remove unused trait ExpressionExecutor. (#1787)
Browse files Browse the repository at this point in the history
It's only implemented by `Expression`
  • Loading branch information
chubei committed Jul 25, 2023
1 parent 5d1a57b commit 724767c
Show file tree
Hide file tree
Showing 30 changed files with 35 additions and 44 deletions.
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/aggregation/avg.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ use crate::pipeline::errors::PipelineError::InvalidValue;
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::aggregate::AggregateFunctionType;
use crate::pipeline::expression::aggregate::AggregateFunctionType::Avg;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use dozer_types::arrow::datatypes::ArrowNativeTypeOp;
use dozer_types::ordered_float::OrderedFloat;
use dozer_types::rust_decimal::Decimal;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/aggregation/max.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use crate::pipeline::aggregation::aggregator::{update_map, Aggregator};
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::aggregate::AggregateFunctionType;
use crate::pipeline::expression::aggregate::AggregateFunctionType::Max;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::{argv, calculate_err, calculate_err_field};
use dozer_types::ordered_float::OrderedFloat;
use dozer_types::types::{Field, FieldType, Schema, SourceDefinition};
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/aggregation/max_value.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use crate::pipeline::aggregation::aggregator::{update_val_map, Aggregator};
use crate::pipeline::errors::PipelineError::InvalidReturnType;
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::aggregate::AggregateFunctionType::MaxValue;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::{argv, calculate_err};
use dozer_types::types::{Field, FieldType, Schema, SourceDefinition};
use std::collections::BTreeMap;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/aggregation/min.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use crate::pipeline::aggregation::aggregator::{update_map, Aggregator};
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::aggregate::AggregateFunctionType;
use crate::pipeline::expression::aggregate::AggregateFunctionType::Min;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::{argv, calculate_err, calculate_err_field};
use dozer_types::ordered_float::OrderedFloat;
use dozer_types::types::{Field, FieldType, Schema, SourceDefinition};
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/aggregation/min_value.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use crate::pipeline::aggregation::aggregator::{update_val_map, Aggregator};
use crate::pipeline::errors::PipelineError::InvalidReturnType;
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::aggregate::AggregateFunctionType::MinValue;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::{argv, calculate_err};
use dozer_types::types::{Field, FieldType, Schema, SourceDefinition};
use std::collections::BTreeMap;
Expand Down
1 change: 0 additions & 1 deletion dozer-sql/src/pipeline/aggregation/processor.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
#![allow(clippy::too_many_arguments)]

use crate::pipeline::errors::PipelineError;
use crate::pipeline::expression::execution::ExpressionExecutor;
use crate::pipeline::{aggregation::aggregator::Aggregator, expression::execution::Expression};
use dozer_core::channels::ProcessorChannelForwarder;
use dozer_core::executor_operation::ProcessorOperation;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/aggregation/sum.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use crate::pipeline::aggregation::aggregator::Aggregator;
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::aggregate::AggregateFunctionType;
use crate::pipeline::expression::aggregate::AggregateFunctionType::Sum;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::{argv, calculate_err_field};
use dozer_types::ordered_float::OrderedFloat;
use dozer_types::rust_decimal::Decimal;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/arg_utils.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use crate::pipeline::errors::PipelineError::InvalidFunctionArgumentType;
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::pipeline::expression::scalar::common::ScalarFunctionType;
use dozer_types::types::{FieldType, Schema};

Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/case.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use crate::pipeline::errors::PipelineError;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;
use dozer_core::processor_record::ProcessorRecord;
use dozer_types::types::{Field, Schema};
use std::iter::zip;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/cast.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ use dozer_types::{

use crate::pipeline::errors::{FieldTypes, PipelineError};

use super::execution::{Expression, ExpressionExecutor, ExpressionType};
use super::execution::{Expression, ExpressionType};

#[allow(dead_code)]
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Hash)]
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/comparison.rs
Original file line number Diff line number Diff line change
Expand Up @@ -625,7 +625,7 @@ macro_rules! define_comparison {
};
}

use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;

pub fn evaluate_lt(
schema: &Schema,
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/conditional.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use crate::pipeline::errors::PipelineError::{
InvalidConditionalExpression, InvalidFunction, NotEnoughArguments,
};
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use dozer_core::processor_record::ProcessorRecord;
use dozer_types::types::{Field, FieldType, Schema};
use std::fmt::{Display, Formatter};
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/datetime.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ use crate::pipeline::errors::PipelineError::{
};
use crate::pipeline::errors::{FieldTypes, PipelineError};
use crate::pipeline::expression::datetime::PipelineError::InvalidValue;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};

use dozer_core::processor_record::ProcessorRecord;
use dozer_types::chrono::{DateTime, Datelike, FixedOffset, Offset, Timelike, Utc};
Expand Down
17 changes: 7 additions & 10 deletions dozer-sql/src/pipeline/expression/execution.rs
Original file line number Diff line number Diff line change
Expand Up @@ -297,15 +297,12 @@ impl ExpressionType {
}
}

impl Expression {}

pub trait ExpressionExecutor: Send + Sync {
fn evaluate(&self, record: &ProcessorRecord, schema: &Schema) -> Result<Field, PipelineError>;
fn get_type(&self, schema: &Schema) -> Result<ExpressionType, PipelineError>;
}

impl ExpressionExecutor for Expression {
fn evaluate(&self, record: &ProcessorRecord, schema: &Schema) -> Result<Field, PipelineError> {
impl Expression {
pub fn evaluate(
&self,
record: &ProcessorRecord,
schema: &Schema,
) -> Result<Field, PipelineError> {
match self {
Expression::Literal(field) => Ok(field.clone()),
Expression::Column { index } => Ok(record.get_field_by_index(*index as u32).clone()),
Expand Down Expand Up @@ -358,7 +355,7 @@ impl ExpressionExecutor for Expression {
}
}

fn get_type(&self, schema: &Schema) -> Result<ExpressionType, PipelineError> {
pub fn get_type(&self, schema: &Schema) -> Result<ExpressionType, PipelineError> {
match self {
Expression::Literal(field) => {
let field_type = get_field_type(field);
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/geo/distance.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ use crate::{arg_point, arg_str};
use dozer_core::processor_record::ProcessorRecord;
use dozer_types::types::{Field, FieldType, Schema};

use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::pipeline::expression::geo::common::GeoFunctionType;
use dozer_types::geo::GeodesicDistance;
use dozer_types::geo::HaversineDistance;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/geo/point.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use crate::pipeline::errors::{FieldTypes, PipelineError};
use dozer_core::processor_record::ProcessorRecord;
use dozer_types::types::{DozerPoint, Field, FieldType, Schema};

use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::pipeline::expression::geo::common::GeoFunctionType;

pub(crate) fn validate_point(
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/in_list.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use dozer_core::processor_record::ProcessorRecord;
use dozer_types::types::{Field, Schema};

use crate::pipeline::errors::PipelineError;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;

pub(crate) fn evaluate_in_list(
schema: &Schema,
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/json_functions.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use crate::pipeline::errors::PipelineError;
use crate::pipeline::errors::PipelineError::{
InvalidArgument, InvalidFunction, InvalidFunctionArgument, InvalidValue,
};
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;

use crate::jsonpath::{JsonPathFinder, JsonPathInst};
use dozer_core::processor_record::ProcessorRecord;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/logical.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use crate::pipeline::errors::PipelineError;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;
use dozer_core::processor_record::ProcessorRecord;
use dozer_types::types::{Field, Schema};

Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/mathematical.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use crate::pipeline::errors::OperationError;
use crate::pipeline::errors::PipelineError;
use crate::pipeline::errors::SqlError::Operation;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;
use dozer_core::processor_record::ProcessorRecord;
use dozer_types::rust_decimal::Decimal;
use dozer_types::types::Schema;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/python_udf.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use crate::pipeline::errors::PipelineError;
use crate::pipeline::errors::PipelineError::UnsupportedSqlError;
use crate::pipeline::errors::UnsupportedSqlError::GenericError;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;
use dozer_core::processor_record::ProcessorRecord;
use dozer_types::ordered_float::OrderedFloat;
use dozer_types::pyo3::types::PyTuple;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/scalar/common.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use crate::argv;
use crate::pipeline::errors::PipelineError;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};
use crate::pipeline::expression::scalar::number::{evaluate_abs, evaluate_round};
use crate::pipeline::expression::scalar::string::{
evaluate_concat, evaluate_length, evaluate_to_char, evaluate_ucase, validate_concat,
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/scalar/number.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use crate::pipeline::errors::PipelineError;
use crate::pipeline::errors::PipelineError::InvalidFunctionArgument;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;
use crate::pipeline::expression::scalar::common::ScalarFunctionType;
use dozer_core::processor_record::ProcessorRecord;
use dozer_types::ordered_float::OrderedFloat;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/scalar/string.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ use std::fmt::{Display, Formatter};

use crate::pipeline::errors::PipelineError;

use crate::pipeline::expression::execution::{Expression, ExpressionExecutor, ExpressionType};
use crate::pipeline::expression::execution::{Expression, ExpressionType};

use crate::pipeline::expression::arg_utils::validate_arg_type;
use crate::pipeline::expression::scalar::common::ScalarFunctionType;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/expression/tests/execution.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use crate::pipeline::builder::SchemaSQLContext;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;
use crate::pipeline::expression::mathematical::evaluate_sub;
use crate::pipeline::expression::operator::{BinaryOperatorType, UnaryOperatorType};
use crate::pipeline::expression::scalar::common::ScalarFunctionType;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/planner/projection.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

use crate::pipeline::errors::PipelineError;
use crate::pipeline::expression::builder::ExpressionBuilder;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;
use crate::pipeline::pipeline_builder::from_builder::string_from_sql_object_name;
use dozer_types::types::{FieldDefinition, Schema};
use sqlparser::ast::{Expr, Ident, Select, SelectItem};
Expand Down
4 changes: 1 addition & 3 deletions dozer-sql/src/pipeline/projection/factory.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,7 @@ use sqlparser::ast::{Expr, Ident, SelectItem};
use crate::pipeline::builder::SchemaSQLContext;
use crate::pipeline::{
errors::PipelineError,
expression::{
builder::ExpressionBuilder, execution::Expression, execution::ExpressionExecutor,
},
expression::{builder::ExpressionBuilder, execution::Expression},
};

use super::processor::ProjectionProcessor;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/projection/processor.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use crate::pipeline::errors::PipelineError;
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;

use dozer_core::channels::ProcessorChannelForwarder;
use dozer_core::epoch::Epoch;
Expand Down
2 changes: 1 addition & 1 deletion dozer-sql/src/pipeline/selection/processor.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use crate::pipeline::expression::execution::{Expression, ExpressionExecutor};
use crate::pipeline::expression::execution::Expression;
use dozer_core::channels::ProcessorChannelForwarder;
use dozer_core::epoch::Epoch;
use dozer_core::executor_operation::ProcessorOperation;
Expand Down
5 changes: 1 addition & 4 deletions dozer-sql/src/pipeline/table_operator/lifetime.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
use dozer_core::processor_record::{ProcessorRecord, ProcessorRecordRef};
use dozer_types::types::{DozerDuration, Lifetime, Schema};

use crate::pipeline::{
errors::TableOperatorError,
expression::execution::{Expression, ExpressionExecutor},
};
use crate::pipeline::{errors::TableOperatorError, expression::execution::Expression};

use super::operator::{TableOperator, TableOperatorType};

Expand Down

0 comments on commit 724767c

Please sign in to comment.