Coverage for lintro / parsers / clippy / clippy_issue.py: 100%
11 statements
« prev ^ index » next coverage.py v7.13.0, created at 2026-04-03 18:53 +0000
« prev ^ index » next coverage.py v7.13.0, created at 2026-04-03 18:53 +0000
1"""Models for Clippy issues."""
3from __future__ import annotations
5from dataclasses import dataclass, field
6from typing import ClassVar
8from lintro.parsers.base_issue import BaseIssue
11@dataclass
12class ClippyIssue(BaseIssue):
13 """Represents a Clippy linting issue.
15 Attributes:
16 DISPLAY_FIELD_MAP: Mapping of display field names to attribute names.
17 code: Clippy lint code (e.g., clippy::needless_return).
18 level: Severity level (e.g., warning, error).
19 end_line: Optional end line number.
20 end_column: Optional end column number.
21 """
23 DISPLAY_FIELD_MAP: ClassVar[dict[str, str]] = {
24 **BaseIssue.DISPLAY_FIELD_MAP,
25 "severity": "level",
26 }
28 code: str = field(default="")
29 level: str | None = field(default=None)
30 end_line: int | None = field(default=None)
31 end_column: int | None = field(default=None)