@@ -210,6 +210,10 @@ from pandas.plotting import PlotAccessor
210210class _SupportsAdd (Protocol [_T_co ]):
211211 def __add__ (self , value : Self , / ) -> _T_co : ...
212212
213+ @type_check_only
214+ class _SupportsMul (Protocol [_T_co ]):
215+ def __mul__ (self , value : Self , / ) -> _T_co : ...
216+
213217class _iLocIndexerSeries (_iLocIndexer , Generic [S1 ]):
214218 # get item
215219 @overload
@@ -3503,17 +3507,8 @@ class Series(IndexOpsMixin[S1], NDFrame):
35033507 * args : Any ,
35043508 ** kwargs : Any ,
35053509 ) -> Series [S1 ]: ...
3506- @overload
3507- def cumprod (
3508- self : Series [_str ],
3509- axis : AxisIndex = ...,
3510- skipna : _bool = ...,
3511- * args : Any ,
3512- ** kwargs : Any ,
3513- ) -> Never : ...
3514- @overload
35153510 def cumprod (
3516- self ,
3511+ self : SupportsGetItem [ Scalar , _SupportsMul [ S1 ]] ,
35173512 axis : AxisIndex = ...,
35183513 skipna : _bool = ...,
35193514 * args : Any ,
@@ -3900,13 +3895,6 @@ class TimestampSeries(_SeriesSubclassBase[Timestamp, np.datetime64]):
39003895 ** kwargs : Any ,
39013896 ) -> Timedelta : ...
39023897 def diff (self , periods : int = ...) -> TimedeltaSeries : ... # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride]
3903- def cumprod (
3904- self ,
3905- axis : AxisIndex = ...,
3906- skipna : _bool = ...,
3907- * args : Any ,
3908- ** kwargs : Any ,
3909- ) -> Never : ...
39103898
39113899class TimedeltaSeries (_SeriesSubclassBase [Timedelta , np .timedelta64 ]):
39123900 # ignores needed because of mypy
@@ -4012,39 +4000,18 @@ class TimedeltaSeries(_SeriesSubclassBase[Timedelta, np.timedelta64]):
40124000 * args : Any ,
40134001 ** kwargs : Any ,
40144002 ) -> TimedeltaSeries : ...
4015- def cumprod (
4016- self ,
4017- axis : AxisIndex = ...,
4018- skipna : _bool = ...,
4019- * args : Any ,
4020- ** kwargs : Any ,
4021- ) -> Never : ...
40224003
40234004class PeriodSeries (_SeriesSubclassBase [Period , np .object_ ]):
40244005 @property
40254006 def dt (self ) -> PeriodProperties : ... # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride]
40264007 def __sub__ (self , other : PeriodSeries ) -> OffsetSeries : ... # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride]
40274008 def diff (self , periods : int = ...) -> OffsetSeries : ... # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride]
4028- def cumprod (
4029- self ,
4030- axis : AxisIndex = ...,
4031- skipna : _bool = ...,
4032- * args : Any ,
4033- ** kwargs : Any ,
4034- ) -> Never : ...
40354009
40364010class OffsetSeries (_SeriesSubclassBase [BaseOffset , np .object_ ]):
40374011 @overload # type: ignore[override]
40384012 def __radd__ (self , other : Period ) -> PeriodSeries : ...
40394013 @overload
40404014 def __radd__ (self , other : BaseOffset ) -> OffsetSeries : ...
4041- def cumprod (
4042- self ,
4043- axis : AxisIndex = ...,
4044- skipna : _bool = ...,
4045- * args : Any ,
4046- ** kwargs : Any ,
4047- ) -> Never : ...
40484015
40494016class IntervalSeries (
40504017 _SeriesSubclassBase [Interval [_OrderableT ], np .object_ ], Generic [_OrderableT ]
0 commit comments