Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I've posted an initial patch at ticket 11461 which fixes the problem that Niles reported. The key is to use the descriptor protocol ( __get__ ) to "wrap" the correct function depending on how the function is accessed. This will also work with classmethods and staticmethods provided that the parallel decorator is applied after either of those two. For example,

class Foo(object):
    @parallel(2)
    @classmethod
    def bar(cls, n):
        return str(cls)*n