1: cdef class A:
2: cpdef foo(self, int k):
3: return "A %s" % k
4:
5: def bar(self, int k):
6: return self.foo(k), A.foo(self, k)
7:
8: cdef class B(A):
9: cpdef foo(self, int k):
10: return "B %s" % k
11:
12: class C(B):
13: def foo(self, int k):
14: return "C %s" % k
15:
16: class D(C):
17: def foo(self, int k):
18: return "D %s" % k, C.foo(self, k), B.foo(self, k), A.foo(self, k)
19:
20: for x in [A(), B(), C(), D()]:
21: print x.foo(5)
22: print x.bar(10)
23:
24: cdef class AA(A):
25: cpdef foo(self, int k):
26: return k
27:
28: assert float(4), A().foo(int(4))