@@ -774,13 +774,17 @@ cdef class CachedFunction():
774
774
else :
775
775
self .__name__ = f.__name__
776
776
try :
777
- self .__module__ = f.__module__
777
+ self .__cached_module__ = f.__module__
778
778
except AttributeError :
779
- self .__module__ = f.__objclass__.__module__
779
+ self .__cached_module__ = f.__objclass__.__module__
780
780
if argument_fixer is not None : # it is None unless the argument fixer
781
781
# was known previously. See #15038.
782
782
self ._argument_fixer = argument_fixer
783
783
784
+ @property
785
+ def __module__ (self ):
786
+ return self .__cached_module__
787
+
784
788
cdef get_key_args_kwds(self , tuple args, dict kwds):
785
789
"""
786
790
Return the key in the cache to be used when ``args`` and
@@ -841,7 +845,7 @@ cdef class CachedFunction():
841
845
sage: loads(dumps(hilbert_class_polynomial)) is hilbert_class_polynomial #indirect doctest # needs sage.schemes
842
846
True
843
847
"""
844
- return _cached_function_unpickle, (self .__module__ , self .__name__, self .cache)
848
+ return _cached_function_unpickle, (self .__cached_module__ , self .__name__, self .cache)
845
849
846
850
# ########
847
851
# # Introspection
@@ -2698,7 +2702,11 @@ cdef class CachedMethod():
2698
2702
self ._cache_name = ' _cache__' + (name or f.__name__ )
2699
2703
self ._cachedfunc = CachedFunction(f, classmethod = True , name = name, key = key, do_pickle = do_pickle)
2700
2704
self .__name__ = self ._cachedfunc.__name__
2701
- self .__module__ = self ._cachedfunc.__module__
2705
+ self .__cached_module__ = self ._cachedfunc.__module__
2706
+
2707
+ @property
2708
+ def __module__ (self ):
2709
+ return self .__cached_module__
2702
2710
2703
2711
def __call__ (self , inst , *args , **kwds ):
2704
2712
"""
0 commit comments