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

    :param cls: the argument class to instantiate.  This defaults to
                :class:`Argument`.