code: def _get_parser_call_method(func):
      
      func_name = func.__name__
      parser = func.parser
  
      def inner_call(instance=None, args=None):
          """This is method attached to <parser>.call.
  
          Args:
              instance: the instance of the parser
              args: arguments to be parsed
          """
          _LOG.debug("Calling %s.parser.call", func_name)
          # Defer this check in the method call so that __init__ can be
          # decorated in class decorated with parse_class
          if func_name == "__init__":
              raise ParseThisError(("To use 'create_parser' on the"
                                    "'__init__' you need to decorate the "
                                    "class with '@parse_class'"))
          namespace = parser.parse_args(_get_args_to_parse(args, sys.argv))
          if instance is None:
              # If instance is None we are probably decorating a function not a
              # method and don't need the instance
              args_name = _get_args_name_from_parser(parser)
              return _call(func, args_name, namespace)
          return _call_method_from_namespace(instance, func_name, namespace)
  
      return inner_call
docs: Returns the method that is linked to the 'call' method of the parser
  
      Args:
          func: the decorated function
  
      Raises:
          ParseThisError if the decorated method is __init__, __init__ can
          only be decorated in a class decorated by parse_class