MCPcopy Create free account
hub / github.com/apache/paimon-rust / expr_to_string

Function expr_to_string

crates/integrations/datafusion/src/procedures.rs:204–225  ·  view source on GitHub ↗
(expr: &SqlExpr)

Source from the content-addressed store, hash-verified

202}
203
204fn expr_to_string(expr: &SqlExpr) -> DFResult<String> {
205 match expr {
206 SqlExpr::Value(v) => match &v.value {
207 SqlValue::SingleQuotedString(s) => Ok(s.clone()),
208 SqlValue::Number(n, _) => Ok(n.clone()),
209 SqlValue::Boolean(b) => Ok(b.to_string()),
210 _ => Err(DataFusionError::Plan(format!(
211 "Unsupported argument value: {v}"
212 ))),
213 },
214 SqlExpr::UnaryOp {
215 op: datafusion::sql::sqlparser::ast::UnaryOperator::Minus,
216 expr,
217 } => {
218 let inner = expr_to_string(expr)?;
219 Ok(format!("-{inner}"))
220 }
221 _ => Err(DataFusionError::Plan(format!(
222 "Unsupported argument expression: {expr}"
223 ))),
224 }
225}
226
227fn require_arg<'a>(args: &'a HashMap<String, String>, name: &str) -> DFResult<&'a str> {
228 args.get(name)

Callers 1

extract_named_argsFunction · 0.85

Calls 1

PlanClass · 0.50

Tested by

no test coverage detected