Fix classmethod for use in cdef classes.
authorRobert Bradshaw <robertwb@math.washington.edu>
Wed, 19 Sep 2007 20:26:34 +0000 (13:26 -0700)
committerRobert Bradshaw <robertwb@math.washington.edu>
Wed, 19 Sep 2007 20:26:34 +0000 (13:26 -0700)
commit1d6dbf9dcc60523d7cbde8f7ce7dd82e75e78499
tree44498148157c510b461add28edcda8815e5ff456
parent1c9be2fcc721674e5a2a70d8d1022426fb6ff514
Fix classmethod for use in cdef classes.

The issue here (as pointed out by Thomas Hunger) is that once the CClass
body gets executed the class is already constructed, and its methods
are actual methods not functions (as in Python).

The CClassScope now returns a utility function on lookup of "classmethod"
that creates a class method out of a method (rather than out of a function).
When added to the type dictionary, the result is exactly the same as setting
the METH_CLASS flag.
Cython/Compiler/Nodes.py
Cython/Compiler/Symtab.py