Skip to content

Commit 95fc7f9

Browse files
move ParseError to own file
1 parent f1d8228 commit 95fc7f9

2 files changed

Lines changed: 22 additions & 15 deletions

File tree

src/iniconfig/__init__.py

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323

2424
__all__ = ["IniConfig", "ParseError"]
2525

26+
from .exceptions import ParseError
27+
2628
COMMENTCHARS = "#;"
2729

2830
_D = TypeVar("_D")
@@ -39,21 +41,6 @@ class _ParsedLine(NamedTuple):
3941
value: str | None
4042

4143

42-
class ParseError(Exception):
43-
path: Final[str]
44-
lineno: Final[int]
45-
msg: Final[str]
46-
47-
def __init__(self, path: str, lineno: int, msg: str):
48-
Exception.__init__(self, path, lineno, msg)
49-
self.path = path
50-
self.lineno = lineno
51-
self.msg = msg
52-
53-
def __str__(self) -> str:
54-
return f"{self.path}:{self.lineno + 1}: {self.msg}"
55-
56-
5744
class SectionWrapper:
5845
config: Final[IniConfig]
5946
name: Final[str]

src/iniconfig/exceptions.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
2+
from __future__ import annotations
3+
from typing import TYPE_CHECKING
4+
5+
if TYPE_CHECKING:
6+
from typing_extensions import Final
7+
8+
class ParseError(Exception):
9+
path: Final[str]
10+
lineno: Final[int]
11+
msg: Final[str]
12+
13+
def __init__(self, path: str, lineno: int, msg: str):
14+
Exception.__init__(self, path, lineno, msg)
15+
self.path = path
16+
self.lineno = lineno
17+
self.msg = msg
18+
19+
def __str__(self) -> str:
20+
return f"{self.path}:{self.lineno + 1}: {self.msg}"

0 commit comments

Comments
 (0)