| from typing import List |
| |
| import mypy.errors |
| |
| |
| class Errors: |
| def __init__(self) -> None: |
| self.num_errors = 0 |
| self.num_warnings = 0 |
| self._errors = mypy.errors.Errors() |
| |
| def error(self, msg: str, path: str, line: int) -> None: |
| self._errors.report(line, None, msg, severity='error', file=path) |
| self.num_errors += 1 |
| |
| def note(self, msg: str, path: str, line: int) -> None: |
| self._errors.report(line, None, msg, severity='note', file=path) |
| |
| def warning(self, msg: str, path: str, line: int) -> None: |
| self._errors.report(line, None, msg, severity='warning', file=path) |
| self.num_warnings += 1 |
| |
| def new_messages(self) -> List[str]: |
| return self._errors.new_messages() |
| |
| def flush_errors(self) -> None: |
| for error in self.new_messages(): |
| print(error) |