#![allow(clippy::collapsible_if)]
#![allow(clippy::let_and_return)]
pub mod column;
pub mod dataframe;
pub mod engine_backend;
pub mod error;
pub mod expr_ir;
pub mod expression;
pub mod functions;
pub mod plan;
pub mod schema;
pub(crate) mod schema_conv;
pub mod session;
pub mod traits;
pub mod type_coercion;
pub mod udf_context;
pub mod udf_registry;
pub mod udfs;
#[cfg(feature = "delta")]
pub mod delta;
#[cfg(any(
feature = "jdbc",
feature = "jdbc_mysql",
feature = "jdbc_mariadb",
feature = "jdbc_mssql",
feature = "jdbc_oracle",
feature = "jdbc_db2",
feature = "sqlite"
))]
pub mod jdbc;
#[cfg(feature = "sql")]
pub mod sql;
pub type Expr = polars::prelude::Expr;
pub type LiteralValue = polars::prelude::LiteralValue;
pub use polars::error::PolarsError;
pub use polars::prelude::DataFrame as PlDataFrame;
pub use polars::prelude::DataType as PlDataType;
pub use polars::prelude::LazyFrame;
pub use polars::prelude::Series;
pub use column::Column;
pub use dataframe::{
CubeRollupData, DataFrame, GroupBySpec, GroupedData, JoinType, PivotedGroupedData, SaveMode,
SelectItem, WriteFormat, WriteMode, broadcast,
};
pub use error::{EngineError, polars_to_core_error};
pub use expression::{column_to_expr, lit_bool, lit_f64, lit_i32, lit_i64, lit_str};
pub use functions::*;
pub use schema::{DataType, StructField, StructType, StructTypePolarsExt, schema_from_json};
pub use session::{DataFrameReader, SparkSession, SparkSessionBuilder};
pub use traits::{FromRobinDf, IntoRobinDf};
pub use type_coercion::{
CompareOp, coerce_for_pyspark_comparison, coerce_for_pyspark_eq_null_safe, find_common_type,
};
pub use udf_context::{
clear_thread_udf_context, get_thread_session_time_zone, get_thread_udf_context,
set_thread_udf_context, set_thread_udf_context_with_tz, update_thread_session_time_zone,
};
pub use udf_registry::{RustUdf, UdfRegistry};