[Cython] PEP 3135 -- New Super

Vitja Makarov vitja.makarov at gmail.com
Tue Jul 12 11:46:03 CEST 2011


2011/7/12 Stefan Behnel <stefan_ml at behnel.de>
>
> Vitja Makarov, 12.07.2011 09:46:
>>
>> About cdef classes: probably it's better to
>> transform super().method(...) into direct form, e.g. BaseClass.method(self,
>> ...)
>
> Except when it doesn't work. ;)
>
>   A
>  / \
>  B  C
>  \ /
>   D
>
> The MRO here is D-B-A-C. If C unconditionally calls A.method(), A's implementation will be called twice, as it was already called by B.
>
> http://www.python.org/download/releases/2.2/descrintro/#mro

According to your link mro in the example is DBCA ;)

Is that a problem for cdef classes? Cdef class have only one base, isn't it?

--
vitja.


More information about the cython-devel mailing list