1PYTHON setup.py build_ext --inplace 2PYTHON -c "import a; a.test()" 3 4######## setup.py ######## 5 6from Cython.Build.Dependencies import cythonize 7 8from distutils.core import setup 9 10setup( 11 ext_modules = cythonize("a.pyx"), 12) 13 14######## a.pyx ######## 15 16cdef class ExtTypeDocstringPass: 17 pass 18 19cdef class ExtTypeDocstring: 20 "huhu!" # this should override the .pxd docstring 21 22cdef class ExtTypePass: 23 pass 24 25cdef class ExtTypeDocstringPassString: 26 pass 27 28def test(): 29 assert not ExtTypePass().__doc__, ExtTypePass().__doc__ 30 assert ExtTypeDocstring().__doc__ == "huhu!", ExtTypeDocstring().__doc__ 31 assert ExtTypeDocstringPass().__doc__ == "hoho!", ExtTypeDocstringPass().__doc__ 32 assert ExtTypeDocstringPassString().__doc__ == "hoho!", ExtTypeDocstringPassString().__doc__ 33 34######## a.pxd ######## 35 36cdef class ExtTypePass: 37 pass 38 39cdef class ExtTypeDocstring: 40 """ 41 hoho 42 """ 43 44cdef class ExtTypeDocstringPass: 45 "hoho!" 46 pass 47 48cdef class ExtTypeDocstringPassString: 49 "hoho!" 50 pass 51 "more hoho" 52