Process `--enable-error-code` and `--disable-error-code` flags.
(self, *, error_callback: Callable[[str], Any])
| 467 | return f"Options({pprint.pformat(self.snapshot())})" |
| 468 | |
| 469 | def process_error_codes(self, *, error_callback: Callable[[str], Any]) -> None: |
| 470 | """Process `--enable-error-code` and `--disable-error-code` flags.""" |
| 471 | disabled_code_names = set(self.disable_error_code) |
| 472 | enabled_code_names = set(self.enable_error_code) |
| 473 | |
| 474 | valid_error_code_names = set(error_codes.keys()) |
| 475 | |
| 476 | invalid_code_names_here = ( |
| 477 | enabled_code_names | disabled_code_names |
| 478 | ) - valid_error_code_names |
| 479 | if invalid_code_names_here: |
| 480 | error_callback(f"Invalid error code(s): {', '.join(sorted(invalid_code_names_here))}") |
| 481 | |
| 482 | # Ignore invalid error codes. |
| 483 | self.disabled_error_codes |= { |
| 484 | error_codes[code] for code in disabled_code_names if code in error_codes |
| 485 | } |
| 486 | self.enabled_error_codes |= { |
| 487 | error_codes[code] for code in enabled_code_names if code in error_codes |
| 488 | } |
| 489 | |
| 490 | # Enabling an error code always overrides disabling |
| 491 | self.disabled_error_codes -= self.enabled_error_codes |
| 492 | |
| 493 | def process_incomplete_features( |
| 494 | self, *, error_callback: Callable[[str], Any], warning_callback: Callable[[str], Any] |