(
f: &mut Formatter<'_>,
expr: &Expr,
precedence: u8,
)
| 793 | // equivalent and the parentheses are not necessary. |
| 794 | |
| 795 | fn write_child( |
| 796 | f: &mut Formatter<'_>, |
| 797 | expr: &Expr, |
| 798 | precedence: u8, |
| 799 | ) -> fmt::Result { |
| 800 | match expr { |
| 801 | Expr::BinaryExpr(child) => { |
| 802 | let p = child.op.precedence(); |
| 803 | if p == 0 || p < precedence { |
| 804 | write!(f, "({child})")?; |
| 805 | } else { |
| 806 | write!(f, "{child}")?; |
| 807 | } |
| 808 | } |
| 809 | _ => write!(f, "{expr}")?, |
| 810 | } |
| 811 | Ok(()) |
| 812 | } |
| 813 | |
| 814 | let precedence = self.op.precedence(); |
| 815 | write_child(f, self.left.as_ref(), precedence)?; |
nothing calls this directly
no test coverage detected