|
1 | | -from collections.abc import Sequence |
| 1 | +from collections.abc import ( |
| 2 | + Hashable, |
| 3 | + Sequence, |
| 4 | +) |
2 | 5 | from typing import ( |
3 | 6 | TypeAlias, |
4 | 7 | TypeVar, |
5 | 8 | ) |
6 | 9 |
|
7 | 10 | from pandas.core.base import IndexOpsMixin |
| 11 | +from typing_extensions import Self |
8 | 12 |
|
9 | 13 | from pandas._libs.indexing import _NDFrameIndexerBase |
| 14 | +from pandas._libs.missing import NAType |
| 15 | +from pandas._libs.tslibs.nattype import NaTType |
10 | 16 | from pandas._typing import ( |
| 17 | + Axis, |
| 18 | + AxisInt, |
11 | 19 | MaskType, |
12 | 20 | Scalar, |
13 | 21 | ) |
@@ -38,20 +46,20 @@ class IndexingMixin: |
38 | 46 | def iat(self) -> _iAtIndexer: ... |
39 | 47 |
|
40 | 48 | class _NDFrameIndexer(_NDFrameIndexerBase): |
41 | | - axis = ... |
42 | | - def __call__(self, axis=...): ... |
43 | | - def __getitem__(self, key): ... |
44 | | - def __setitem__(self, key, value) -> None: ... |
45 | | - |
46 | | -class _LocationIndexer(_NDFrameIndexer): |
47 | | - def __getitem__(self, key): ... |
| 49 | + axis: AxisInt | None = None |
| 50 | + def __call__(self, axis: Axis | None = None) -> Self: ... |
48 | 51 |
|
49 | | -class _LocIndexer(_LocationIndexer): ... |
50 | | -class _iLocIndexer(_LocationIndexer): ... |
| 52 | +class _LocIndexer(_NDFrameIndexer): ... |
| 53 | +class _iLocIndexer(_NDFrameIndexer): ... |
51 | 54 |
|
52 | | -class _ScalarAccessIndexer(_NDFrameIndexerBase): |
53 | | - def __getitem__(self, key): ... |
54 | | - def __setitem__(self, key, value) -> None: ... |
| 55 | +class _AtIndexer(_NDFrameIndexerBase): |
| 56 | + def __getitem__(self, key: Hashable) -> Scalar: ... |
| 57 | + def __setitem__( |
| 58 | + self, key: Hashable, value: Scalar | NAType | NaTType | None |
| 59 | + ) -> None: ... |
55 | 60 |
|
56 | | -class _AtIndexer(_ScalarAccessIndexer): ... |
57 | | -class _iAtIndexer(_ScalarAccessIndexer): ... |
| 61 | +class _iAtIndexer(_NDFrameIndexerBase): |
| 62 | + def __getitem__(self, key: int) -> Scalar: ... |
| 63 | + def __setitem__( |
| 64 | + self, key: int, value: Scalar | NAType | NaTType | None |
| 65 | + ) -> None: ... |
0 commit comments