def func(f: t.Callable): name = f.__name__ #args = f.__arguments__ annotations = f.__annotations__ module = f.__module__ doc = f.__doc__ qname = f.__qualname__ for opt in sorted(option.options): f = cmd_option(opt, name_prefix)(f) f.__name__ = name[0:-2] if name.endswith("_") else name f.__qualname__ = qname[0:-2] if qname.endswith("_") else qname #f.__args__ = args f.__annotations__ = annotations f.__module__ = module f.__doc__ = doc return f
def func(f: t.Callable): name = f.__name__ #args = f.__arguments__ annotations = f.__annotations__ module = f.__module__ doc = f.__doc__ qname = f.__qualname__ for i, opt in enumerate(sorted(option.options)): validate = None if isinstance(opt, CmdOption) and i == 0: validate = True f = cmd_option(opt, name_prefix, validate=validate)(f) f.__name__ = name[0:-2] if name.endswith("_") else name f.__qualname__ = qname[0:-2] if qname.endswith("_") else qname #f.__args__ = args f.__annotations__ = annotations f.__module__ = module f.__doc__ = doc return f
def decorator(f: typing.Callable) -> typing.Callable[..., typing.Any]: f.__name__ = newname return f