parameters: (self)
return_statement: return func
docstring: Return the callback. If the callback is a decorated function, try to
              recover the original function.
docstring_summary: Return the callback. If the callback is a decorated function, try to
              recover the original function.
docstring_tokens: Return the callback . If the callback is a decorated function try to recover the original function .
function: def get_undecorated_callback(self):
          ''' Return the callback. If the callback is a decorated function, try to
              recover the original function. '''
          func = self.callback
          func = getattr(func, '__func__' if py3k else 'im_func', func)
          closure_attr = '__closure__' if py3k else 'func_closure'
          while hasattr(func, closure_attr) and getattr(func, closure_attr):
              func = getattr(func, closure_attr)[0].cell_contents
          return func
function_tokens: def get_undecorated_callback ( self ) : func = self . callback func = getattr ( func , '__func__' if py3k else 'im_func' , func ) closure_attr = '__closure__' if py3k else 'func_closure' while hasattr ( func , closure_attr ) and getattr ( func , closure_attr ) : func = getattr ( func , closure_attr ) [ 0 ] . cell_contents return func