(
lines: list[str], dedent: int | None, location: tuple[str, int] | None = None
)
| 57 | |
| 58 | |
| 59 | def dedent_lines( |
| 60 | lines: list[str], dedent: int | None, location: tuple[str, int] | None = None |
| 61 | ) -> list[str]: |
| 62 | if dedent is None: |
| 63 | return textwrap.dedent(''.join(lines)).splitlines(True) |
| 64 | |
| 65 | if any(s[:dedent].strip() for s in lines): |
| 66 | logger.warning(__('non-whitespace stripped by dedent'), location=location) |
| 67 | |
| 68 | new_lines = [] |
| 69 | for line in lines: |
| 70 | new_line = line[dedent:] |
| 71 | if line.endswith('\n') and not new_line: |
| 72 | new_line = '\n' # keep CRLF |
| 73 | new_lines.append(new_line) |
| 74 | |
| 75 | return new_lines |
| 76 | |
| 77 | |
| 78 | def container_wrapper( |
no test coverage detected
searching dependent graphs…