pxd_syntax.srctree 1.02 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
PYTHON setup.py build_ext --inplace
PYTHON -c "import a; a.test()"

######## setup.py ########

from Cython.Build.Dependencies import cythonize

from distutils.core import setup

setup(
    ext_modules = cythonize("a.pyx"),
)

######## a.pyx ########

cdef class ExtTypeDocstringPass:
    pass

cdef class ExtTypeDocstring:
    "huhu!"   # this should override the .pxd docstring

cdef class ExtTypePass:
    pass

cdef class ExtTypeDocstringPassString:
    pass

def test():
    assert not ExtTypePass().__doc__, ExtTypePass().__doc__
    assert ExtTypeDocstring().__doc__ == "huhu!", ExtTypeDocstring().__doc__
    assert ExtTypeDocstringPass().__doc__ == "hoho!", ExtTypeDocstringPass().__doc__
    assert ExtTypeDocstringPassString().__doc__ == "hoho!", ExtTypeDocstringPassString().__doc__

######## a.pxd ########

cdef class ExtTypePass:
    pass

cdef class ExtTypeDocstring:
    """
    hoho
    """

cdef class ExtTypeDocstringPass:
    "hoho!"
    pass

cdef class ExtTypeDocstringPassString:
    "hoho!"
    pass
    "more hoho"