|
5 | 5 | from typing import Any |
6 | 6 | from typing import Iterable |
7 | 7 | from typing import Literal |
8 | | -from typing import Sequence |
9 | 8 | from typing import overload |
10 | 9 |
|
11 | 10 | import polars as pl |
@@ -77,38 +76,36 @@ def len(self: Self) -> PolarsExpr: |
77 | 76 | @overload |
78 | 77 | def concat( |
79 | 78 | self: Self, |
80 | | - items: Sequence[PolarsDataFrame], |
| 79 | + items: Iterable[PolarsDataFrame], |
81 | 80 | *, |
82 | 81 | how: Literal["vertical", "horizontal", "diagonal"], |
83 | 82 | ) -> PolarsDataFrame: ... |
84 | 83 |
|
85 | 84 | @overload |
86 | 85 | def concat( |
87 | 86 | self: Self, |
88 | | - items: Sequence[PolarsLazyFrame], |
| 87 | + items: Iterable[PolarsLazyFrame], |
89 | 88 | *, |
90 | 89 | how: Literal["vertical", "horizontal", "diagonal"], |
91 | 90 | ) -> PolarsLazyFrame: ... |
92 | 91 |
|
93 | 92 | def concat( |
94 | 93 | self: Self, |
95 | | - items: Sequence[PolarsDataFrame] | Sequence[PolarsLazyFrame], |
| 94 | + items: Iterable[PolarsDataFrame] | Iterable[PolarsLazyFrame], |
96 | 95 | *, |
97 | 96 | how: Literal["vertical", "horizontal", "diagonal"], |
98 | 97 | ) -> PolarsDataFrame | PolarsLazyFrame: |
99 | 98 | from narwhals._polars.dataframe import PolarsDataFrame |
100 | 99 | from narwhals._polars.dataframe import PolarsLazyFrame |
101 | 100 |
|
102 | | - dfs: list[Any] = [item._native_frame for item in items] |
| 101 | + dfs: Iterable[Any] = (item.native for item in items) |
103 | 102 | result = pl.concat(dfs, how=how) |
104 | 103 | if isinstance(result, pl.DataFrame): |
105 | 104 | return PolarsDataFrame( |
106 | | - result, |
107 | | - backend_version=items[0]._backend_version, |
108 | | - version=items[0]._version, |
| 105 | + result, backend_version=self._backend_version, version=self._version |
109 | 106 | ) |
110 | 107 | return PolarsLazyFrame( |
111 | | - result, backend_version=items[0]._backend_version, version=items[0]._version |
| 108 | + result, backend_version=self._backend_version, version=self._version |
112 | 109 | ) |
113 | 110 |
|
114 | 111 | def lit(self: Self, value: Any, dtype: DType | None) -> PolarsExpr: |
|
0 commit comments