def return_schemes(func):
    'Make sure method returns full path with scheme.'

    @wraps(func)
    def wrapper(self, path, *args, **kwargs):
        res = func(self, path, *args, **kwargs)
        try:
            res = list(map(partial(prepend_scheme, self.scheme), res))
        except TypeError:
            res = prepend_scheme(self.scheme, res)
        return res
    return wrapper
Make sure method returns full path with scheme.
def return_schemes(func):
    

    @wraps(func)
    def wrapper(self, path, *args, **kwargs):
        res = func(self, path, *args, **kwargs)
        try:
            res = list(map(partial(prepend_scheme, self.scheme), res))
        except TypeError:
            res = prepend_scheme(self.scheme, res)
        return res
    return wrapper