File tree 1 file changed +4
-2
lines changed 1 file changed +4
-2
lines changed Original file line number Diff line number Diff line change @@ -9,17 +9,19 @@ from cpython cimport (
9
9
cdef class cache_readonly(object ):
10
10
11
11
cdef readonly:
12
- object func, name, allow_setting
12
+ object func, name, doc, allow_setting
13
13
14
14
def __init__ (self , func = None , allow_setting = False ):
15
15
if func is not None :
16
16
self .func = func
17
17
self .name = func.__name__
18
+ self .doc = getattr (func, ' __doc__' , None )
18
19
self .allow_setting = allow_setting
19
20
20
21
def __call__ (self , func , doc = None ):
21
22
self .func = func
22
23
self .name = func.__name__
24
+ self .doc = getattr (func, ' __doc__' , None )
23
25
return self
24
26
25
27
def __get__ (self , obj , typ ):
@@ -30,7 +32,7 @@ cdef class cache_readonly(object):
30
32
try :
31
33
cache = obj._cache = {}
32
34
except (AttributeError ):
33
- return
35
+ return type ( ' cached ' , ( object , ), { ' __doc__ ' : self .doc})
34
36
35
37
if PyDict_Contains(cache, self .name):
36
38
# not necessary to Py_INCREF
You can’t perform that action at this time.
0 commit comments