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(())
    });
}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…