(
f: &mut std::fmt::Formatter,
expr: &dyn PhysicalExpr,
precedence: u8,
)
| 131 | // equivalent and the parentheses are not necessary. |
| 132 | |
| 133 | fn write_child( |
| 134 | f: &mut std::fmt::Formatter, |
| 135 | expr: &dyn PhysicalExpr, |
| 136 | precedence: u8, |
| 137 | ) -> std::fmt::Result { |
| 138 | if let Some(child) = expr.downcast_ref::<BinaryExpr>() { |
| 139 | let p = child.op.precedence(); |
| 140 | if p == 0 || p < precedence { |
| 141 | write!(f, "({child})")?; |
| 142 | } else { |
| 143 | write!(f, "{child}")?; |
| 144 | } |
| 145 | } else { |
| 146 | write!(f, "{expr}")?; |
| 147 | } |
| 148 | |
| 149 | Ok(()) |
| 150 | } |
| 151 | |
| 152 | let precedence = self.op.precedence(); |
| 153 | write_child(f, self.left.as_ref(), precedence)?; |
nothing calls this directly
no test coverage detected