(self, node, use_str_attr=False)
| 659 | return unparser.visit(inner) |
| 660 | |
| 661 | def _write_interpolation(self, node, use_str_attr=False): |
| 662 | with self.delimit("{", "}"): |
| 663 | if use_str_attr: |
| 664 | expr = node.str |
| 665 | else: |
| 666 | expr = self._unparse_interpolation_value(node.value) |
| 667 | if expr.startswith("{"): |
| 668 | # Separate pair of opening brackets as "{ {" |
| 669 | self.write(" ") |
| 670 | self.write(expr) |
| 671 | if node.conversion != -1: |
| 672 | self.write(f"!{chr(node.conversion)}") |
| 673 | if node.format_spec: |
| 674 | self.write(":") |
| 675 | self._write_ftstring_inner(node.format_spec, is_format_spec=True) |
| 676 | |
| 677 | def visit_FormattedValue(self, node): |
| 678 | self._write_interpolation(node) |
no test coverage detected