Skip to content

Commit c7d1d88

Browse files
add sectionwrapper get overload types
1 parent 90df3d7 commit c7d1d88

1 file changed

Lines changed: 35 additions & 0 deletions

File tree

src/iniconfig/__init__.py

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,42 @@ def __init__(self, config: IniConfig, name: str) -> None:
4343
def lineof(self, name: str) -> int | None:
4444
return self.config.lineof(self.name, name)
4545

46+
@overload
47+
def get(self, key: str) -> str | None:
48+
...
49+
50+
@overload
51+
def get(
52+
self,
53+
key: str,
54+
convert: Callable[[str], _T],
55+
) -> _T | None:
56+
...
57+
58+
@overload
4659
def get(
60+
self,
61+
key: str,
62+
default: None,
63+
convert: Callable[[str], _T],
64+
) -> _T | None:
65+
...
66+
67+
@overload
68+
def get(self, key: str, default: _D, convert: None = None) -> str | _D:
69+
...
70+
71+
@overload
72+
def get(
73+
self,
74+
key: str,
75+
default: _D,
76+
convert: Callable[[str], _T],
77+
) -> _T | _D:
78+
...
79+
80+
# TODO: investigate possible mypy bug wrt matching the passed over data
81+
def get( # type: ignore [misc]
4782
self,
4883
key: str,
4984
default: _D | None = None,

0 commit comments

Comments
 (0)