#NEWLINE# def argument( * param_decls , **attrs ) : #NEWLINE# #INDENT# 'Attaches an argument to the command.  All positional arguments are\n    passed as parameter declarations to :class:`Argument`; all keyword\n    arguments are forwarded unchanged (except ``cls``).\n    This is equivalent to creating an :class:`Argument` instance manually\n    and attaching it to the :attr:`Command.params` list.\n\n    :param cls: the argument class to instantiate.  This defaults to\n                :class:`Argument`.\n    ' #NEWLINE# def decorator( f ) : #NEWLINE# #INDENT# ArgumentClass = attrs . pop ( 'cls' , Argument ) #NEWLINE# _param_memo ( f , ArgumentClass ( param_decls , ** attrs ) ) #NEWLINE# return f #NEWLINE# #UNINDENT# return decorator