use crate::db::{
query::plan::expr::Expr,
sql::{
lowering::expr::{SqlExprPhase, lower_sql_expr},
parser::{parse_grouped_post_aggregate_order_expr_ast, parse_supported_order_expr_ast},
},
};
#[must_use]
pub(in crate::db) fn lower_supported_order_expr_text(term: &str) -> Option<Expr> {
let ast = parse_supported_order_expr_ast(term)?;
lower_sql_expr(&ast, SqlExprPhase::Scalar).ok()
}
#[must_use]
pub(in crate::db) fn lower_grouped_post_aggregate_order_expr_text(term: &str) -> Option<Expr> {
let ast = parse_grouped_post_aggregate_order_expr_ast(term)?;
lower_sql_expr(&ast, SqlExprPhase::PostAggregate).ok()
}