INNER CODE UNIT · Rust
parenthesize
apache/datafusion-sqlparser-rs · fuzz/fuzz_targets/expression/mod.rs:209
pub fn parenthesize(statement: &mut Statement) {
let _ = visit_expressions_mut(statement, |expr| {
// These already print inside their own parentheses or are single tokens.
if !matches!(
expr,
Expr::Value(_)
| Expr::Identifier(_)
| Expr::CompoundIdentifier(_)
| Expr::Nested(_)
| Expr::Subquery(_)
| Expr::Tuple(_)
) {
let inner = std::mem::replace(expr, Expr::value(sqlparser::ast::Value::Null));
*expr = Expr::Nested(Box::new(inner));
}
ControlFlow::<()>::Continue(())
});
}