|
Packit |
562c7a |
cdef class A:
|
|
Packit |
562c7a |
@staticmethod
|
|
Packit |
562c7a |
def static_def(int x):
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
>>> A.static_def(2)
|
|
Packit |
562c7a |
('def', 2)
|
|
Packit |
562c7a |
>>> A().static_def(2)
|
|
Packit |
562c7a |
('def', 2)
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
return 'def', x
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
@staticmethod
|
|
Packit |
562c7a |
cdef static_cdef(int* x):
|
|
Packit |
562c7a |
return 'cdef', x[0]
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
@staticmethod
|
|
Packit |
562c7a |
cdef static_cdef2(int* x, int* y):
|
|
Packit |
562c7a |
return 'cdef2', x[0] + y[0]
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
@staticmethod
|
|
Packit |
562c7a |
cdef static_cdef_untyped(a, b):
|
|
Packit |
562c7a |
return 'cdef_utyped', a, b
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
# @staticmethod
|
|
Packit |
562c7a |
# cpdef static_cpdef(int x):
|
|
Packit |
562c7a |
# """
|
|
Packit |
562c7a |
# >>> A.static_def
|
|
Packit |
562c7a |
# >>> A.static_cpdef
|
|
Packit |
562c7a |
#
|
|
Packit |
562c7a |
# >>> A().static_def
|
|
Packit |
562c7a |
# >>> A().static_cpdef
|
|
Packit |
562c7a |
#
|
|
Packit |
562c7a |
# >>> A.static_cpdef(2)
|
|
Packit |
562c7a |
# ('cpdef', 2)
|
|
Packit |
562c7a |
# >>> A().static_cpdef(2)
|
|
Packit |
562c7a |
# ('cpdef', 2)
|
|
Packit |
562c7a |
# """
|
|
Packit |
562c7a |
# return 'cpdef', x
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
def call_static_def(int x):
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
>>> call_static_def(2)
|
|
Packit |
562c7a |
('def', 2)
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
return A.static_def(x)
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
def call_static_cdef(int x):
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
>>> call_static_cdef(2)
|
|
Packit |
562c7a |
('cdef', 2)
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
cdef int *x_ptr = &x
|
|
Packit |
562c7a |
return A.static_cdef(x_ptr)
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
def call_static_cdef2(int x, int y):
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
>>> call_static_cdef2(2, 3)
|
|
Packit |
562c7a |
('cdef2', 5)
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
return A.static_cdef2(&x, &y)
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
def call_static_list_comprehension_GH1540(int x):
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
>>> call_static_list_comprehension_GH1540(5)
|
|
Packit |
562c7a |
[('cdef', 5), ('cdef', 5), ('cdef', 5)]
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
return [A.static_cdef(&x) for _ in range(3)]
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
# BROKEN
|
|
Packit |
562c7a |
#def call_static_cdef_untyped(a, b):
|
|
Packit |
562c7a |
# """
|
|
Packit |
562c7a |
# >>> call_static_cdef_untyped(100, None)
|
|
Packit |
562c7a |
# ('cdef_untyped', 100, None)
|
|
Packit |
562c7a |
# """
|
|
Packit |
562c7a |
# return A.static_cdef_untyped(a, b)
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
# UNIMPLEMENTED
|
|
Packit |
562c7a |
# def call_static_cpdef(int x):
|
|
Packit |
562c7a |
# """
|
|
Packit |
562c7a |
# >>> call_static_cpdef(2)
|
|
Packit |
562c7a |
# ('cpdef', 2)
|
|
Packit |
562c7a |
# """
|
|
Packit |
562c7a |
# return A.static_cpdef(x)
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
cdef class FromPxd:
|
|
Packit |
562c7a |
@staticmethod
|
|
Packit |
562c7a |
cdef static_cdef(int* x):
|
|
Packit |
562c7a |
return 'pxd_cdef', x[0]
|
|
Packit |
562c7a |
|
|
Packit |
562c7a |
def call_static_pxd_cdef(int x):
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
>>> call_static_pxd_cdef(2)
|
|
Packit |
562c7a |
('pxd_cdef', 2)
|
|
Packit |
562c7a |
"""
|
|
Packit |
562c7a |
cdef int *x_ptr = &x
|
|
Packit |
562c7a |
return FromPxd.static_cdef(x_ptr)
|