def METHOD_NAME(caller):
    """Turns caller into a decorator.
    Unlike decorator module, function signature is not preserved.
    Parameters
    ----------
    caller: caller(f, *args, **kwargs)
    """
    def decor(f):
        @wraps(f)
        def wrapper(*args, **kwargs):
            return caller(f, *args, **kwargs)
        return wrapper
    return decor