Mini Shell

Direktori : /proc/self/root/opt/imh-python/lib/python3.9/site-packages/vine/
Upload File :
Current File : //proc/self/root/opt/imh-python/lib/python3.9/site-packages/vine/utils.py

"""Python compatibility utilities."""
from functools import WRAPPER_ASSIGNMENTS, WRAPPER_UPDATES, partial
from functools import update_wrapper as _update_wrapper

__all__ = ['update_wrapper', 'wraps']


def update_wrapper(wrapper, wrapped, *args, **kwargs):
    """Update wrapper, also setting .__wrapped__."""
    wrapper = _update_wrapper(wrapper, wrapped, *args, **kwargs)
    wrapper.__wrapped__ = wrapped
    return wrapper


def wraps(wrapped,
          assigned=WRAPPER_ASSIGNMENTS,
          updated=WRAPPER_UPDATES):
    """Backport of Python 3.5 wraps that adds .__wrapped__."""
    return partial(update_wrapper, wrapped=wrapped,
                   assigned=assigned, updated=updated)


def reraise(tp, value, tb=None):
    """Reraise exception."""
    if value.__traceback__ is not tb:
        raise value.with_traceback(tb)
    raise value

Zerion Mini Shell 1.0