| 320 | |
| 321 | |
| 322 | class Cut: |
| 323 | def __init__(self) -> None: |
| 324 | pass |
| 325 | |
| 326 | def __repr__(self) -> str: |
| 327 | return "Cut()" |
| 328 | |
| 329 | def __str__(self) -> str: |
| 330 | return "~" |
| 331 | |
| 332 | def __iter__(self) -> Iterator[tuple[str, str]]: |
| 333 | yield from () |
| 334 | |
| 335 | def __eq__(self, other: object) -> bool: |
| 336 | if not isinstance(other, Cut): |
| 337 | return NotImplemented |
| 338 | return True |
| 339 | |
| 340 | def initial_names(self) -> Set[str]: |
| 341 | return set() |
| 342 | |
| 343 | |
| 344 | Plain = Leaf | Group |