diff --git a/importlib_resources/_adapters.py b/importlib_resources/_adapters.py index eedde49..7f8ff8d 100644 --- a/importlib_resources/_adapters.py +++ b/importlib_resources/_adapters.py @@ -35,7 +35,12 @@ class DegenerateFiles: """ class Path(abc.Traversable): + def __init__(self, spec): + self.spec = spec + def iterdir(self): + if isinstance(self.spec.loader, abc.ResourceReader): + return self.spec.loader.contents() return iter(()) def is_dir(self): @@ -71,7 +76,7 @@ def __getattr__(self, attr): return getattr(self._reader, attr) def files(self): - return DegenerateFiles.Path() + return DegenerateFiles.Path(self.spec) def wrap_spec(package):