Skip to content

Commit 4f03531

Browse files
committed
chore(typing): Fix (Compliant|Polars)Series namespaces
- Left over from #2756 - Need to merge #2897 first and rebase
1 parent 0e80656 commit 4f03531

File tree

2 files changed

+67
-5
lines changed

2 files changed

+67
-5
lines changed

narwhals/_compliant/series.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -285,15 +285,15 @@ def hist_from_bin_count(
285285
...
286286

287287
@property
288-
def str(self) -> Any: ...
288+
def str(self) -> StringNamespace[Self]: ...
289289
@property
290-
def dt(self) -> Any: ...
290+
def dt(self) -> DateTimeNamespace[Self]: ...
291291
@property
292-
def cat(self) -> Any: ...
292+
def cat(self) -> CatNamespace[Self]: ...
293293
@property
294-
def list(self) -> Any: ...
294+
def list(self) -> ListNamespace[Self]: ...
295295
@property
296-
def struct(self) -> Any: ...
296+
def struct(self) -> StructNamespace[Self]: ...
297297

298298

299299
class EagerSeries(CompliantSeries[NativeSeriesT], Protocol[NativeSeriesT]):

narwhals/_polars/series.py

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -682,6 +682,10 @@ def list(self) -> PolarsSeriesListNamespace:
682682

683683

684684
class PolarsSeriesDateTimeNamespace:
685+
@property
686+
def compliant(self) -> PolarsSeries:
687+
return self._compliant_series
688+
685689
def __init__(self, series: PolarsSeries) -> None:
686690
self._compliant_series = series
687691

@@ -694,8 +698,36 @@ def func(*args: Any, **kwargs: Any) -> Any:
694698

695699
return func
696700

701+
truncate: Method[PolarsSeries]
702+
offset_by: Method[PolarsSeries]
703+
to_string: Method[PolarsSeries]
704+
replace_time_zone: Method[PolarsSeries]
705+
convert_time_zone: Method[PolarsSeries]
706+
timestamp: Method[PolarsSeries]
707+
date: Method[PolarsSeries]
708+
year: Method[PolarsSeries]
709+
month: Method[PolarsSeries]
710+
day: Method[PolarsSeries]
711+
hour: Method[PolarsSeries]
712+
minute: Method[PolarsSeries]
713+
second: Method[PolarsSeries]
714+
millisecond: Method[PolarsSeries]
715+
microsecond: Method[PolarsSeries]
716+
nanosecond: Method[PolarsSeries]
717+
ordinal_day: Method[PolarsSeries]
718+
weekday: Method[PolarsSeries]
719+
total_minutes: Method[PolarsSeries]
720+
total_seconds: Method[PolarsSeries]
721+
total_milliseconds: Method[PolarsSeries]
722+
total_microseconds: Method[PolarsSeries]
723+
total_nanoseconds: Method[PolarsSeries]
724+
697725

698726
class PolarsSeriesStringNamespace:
727+
@property
728+
def compliant(self) -> PolarsSeries:
729+
return self._compliant_series
730+
699731
def __init__(self, series: PolarsSeries) -> None:
700732
self._compliant_series = series
701733

@@ -714,8 +746,26 @@ def func(*args: Any, **kwargs: Any) -> Any:
714746

715747
return func
716748

749+
len_chars: Method[PolarsSeries]
750+
replace: Method[PolarsSeries]
751+
replace_all: Method[PolarsSeries]
752+
strip_chars: Method[PolarsSeries]
753+
starts_with: Method[PolarsSeries]
754+
ends_with: Method[PolarsSeries]
755+
contains: Method[PolarsSeries]
756+
slice: Method[PolarsSeries]
757+
split: Method[PolarsSeries]
758+
to_date: Method[PolarsSeries]
759+
to_datetime: Method[PolarsSeries]
760+
to_lowercase: Method[PolarsSeries]
761+
to_uppercase: Method[PolarsSeries]
762+
717763

718764
class PolarsSeriesCatNamespace:
765+
@property
766+
def compliant(self) -> PolarsSeries:
767+
return self._compliant_series
768+
719769
def __init__(self, series: PolarsSeries) -> None:
720770
self._compliant_series = series
721771

@@ -728,8 +778,14 @@ def func(*args: Any, **kwargs: Any) -> Any:
728778

729779
return func
730780

781+
get_categories: Method[PolarsSeries]
782+
731783

732784
class PolarsSeriesListNamespace:
785+
@property
786+
def compliant(self) -> PolarsSeries:
787+
return self._series
788+
733789
def __init__(self, series: PolarsSeries) -> None:
734790
self._series = series
735791

@@ -759,6 +815,10 @@ def func(*args: Any, **kwargs: Any) -> Any:
759815

760816

761817
class PolarsSeriesStructNamespace:
818+
@property
819+
def compliant(self) -> PolarsSeries:
820+
return self._compliant_series
821+
762822
def __init__(self, series: PolarsSeries) -> None:
763823
self._compliant_series = series
764824

@@ -770,3 +830,5 @@ def func(*args: Any, **kwargs: Any) -> Any:
770830
)
771831

772832
return func
833+
834+
field: Method[PolarsSeries]

0 commit comments

Comments
 (0)