I have a decorator method to check the argument types passed to a function.
def accepts(*types):
    def check_accepts(f):
        assert len(types) == f.func_code.co_argcount
        def new_f(*args, **kwds):
            for (a, t) in zip(args, types):
                assert isinstance(a, t), \
                       "arg %r does not match %s" % (a,t)
            return f(*args, **kwds)
        new_f.func_name = f.func_name
        return new_f
    return check_accepts
Now, in a class (in classA.py), I want a method to only accept arguments of the same class:
class ClassA:
    @accepts(WHATTOPUTHERE)
    def doSomething(otherObject):
        # Do something
In other classes I can just put ClassA in place of WHATTOPUTHERE, but inside classA.py, ClassA is not known. How can I pass the current class to the @accepts() function?
 
     
     
    