@@ -185,9 +185,6 @@ def __add__(date):
185
185
Timestamp('2017-03-01 09:10:11')
186
186
"""
187
187
188
- # FIXME: restore these as cache_readonly
189
- # _params = cache_readonly(BaseOffset._params.__get__)
190
- # freqstr = cache_readonly(BaseOffset.freqstr.__get__)
191
188
_attributes = frozenset (["n" , "normalize" ] + list (liboffsets .relativedelta_kwds ))
192
189
_adjust_dst = False
193
190
@@ -296,19 +293,35 @@ def is_on_offset(self, dt):
296
293
# TODO, see #1395
297
294
return True
298
295
296
+ @cache_readonly
297
+ def _params (self ):
298
+ # TODO: see if we can just write cache_readonly(BaseOffset._params.__get__)
299
+ return BaseOffset ._params .__get__ (self )
299
300
300
- class SingleConstructorOffset ( BaseOffset ):
301
- # FIXME: restore these as cache_readonly
302
- # _params = cache_readonly(BaseOffset._params .__get__)
303
- # freqstr = cache_readonly( BaseOffset.freqstr.__get__)
301
+ @ cache_readonly
302
+ def freqstr ( self ):
303
+ # TODO: see if we can just write cache_readonly(BaseOffset.freqstr .__get__)
304
+ return BaseOffset .freqstr .__get__ ( self )
304
305
306
+
307
+ class SingleConstructorOffset (BaseOffset ):
305
308
@classmethod
306
309
def _from_name (cls , suffix = None ):
307
310
# default _from_name calls cls with no args
308
311
if suffix :
309
312
raise ValueError (f"Bad freq suffix { suffix } " )
310
313
return cls ()
311
314
315
+ @cache_readonly
316
+ def _params (self ):
317
+ # TODO: see if we can just write cache_readonly(BaseOffset._params.__get__)
318
+ return BaseOffset ._params .__get__ (self )
319
+
320
+ @cache_readonly
321
+ def freqstr (self ):
322
+ # TODO: see if we can just write cache_readonly(BaseOffset.freqstr.__get__)
323
+ return BaseOffset .freqstr .__get__ (self )
324
+
312
325
313
326
class BusinessDay (BusinessMixin , SingleConstructorOffset ):
314
327
"""
0 commit comments