Skip to content

Commit 58fe831

Browse files
Copy openpyxl's Worksheet.__getitem__() and .__iter__() to ReadOnlyWorksheet (#12202)
1 parent bf03f9b commit 58fe831

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

stubs/openpyxl/openpyxl/worksheet/_read_only.pyi

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from _typeshed import SupportsGetItem
2-
from collections.abc import Generator
2+
from collections.abc import Generator, Iterator
3+
from typing import Any, overload
34

45
from openpyxl import _VisibilityType
56
from openpyxl.cell import _CellValue
@@ -21,8 +22,15 @@ class ReadOnlyWorksheet:
2122
# https://github.com/python/mypy/issues/6700
2223
@property
2324
def rows(self) -> Generator[tuple[Cell, ...], None, None]: ...
24-
__getitem__ = Worksheet.__getitem__
25-
__iter__ = Worksheet.__iter__
25+
# From Worksheet.__getitem__
26+
@overload
27+
def __getitem__(self, key: int) -> tuple[Cell, ...]: ...
28+
@overload
29+
def __getitem__(self, key: slice) -> tuple[Any, ...]: ... # tuple[AnyOf[Cell, tuple[Cell, ...]]]
30+
@overload
31+
def __getitem__(self, key: str) -> Any: ... # AnyOf[Cell, tuple[Cell, ...], tuple[tuple[Cell, ...], ...]]
32+
# From Worksheet.__iter__
33+
def __iter__(self) -> Iterator[tuple[Cell, ...]]: ...
2634
parent: Workbook
2735
title: str
2836
sheet_state: _VisibilityType

0 commit comments

Comments
 (0)