diff --git a/pyiron_snippets/resources.py b/pyiron_snippets/resources.py index c415f66..550c651 100644 --- a/pyiron_snippets/resources.py +++ b/pyiron_snippets/resources.py @@ -12,7 +12,7 @@ from collections.abc import Iterable, Iterator from fnmatch import fnmatch from glob import glob -from typing import Any +from typing import Any, Self EXE_SUFFIX = "bat" if os.name == "nt" else "sh" @@ -35,7 +35,7 @@ class AbstractResolver(ABC): """ @abstractmethod - def _search(self, name: tuple[str]) -> Iterator[Any]: + def _search(self, name: tuple[str, ...]) -> Iterator[Any]: pass def search(self, name: Iterable[str] | str = "*") -> Iterator[Any]: @@ -86,7 +86,7 @@ def first(self, name: Iterable[str] | str = "*") -> Any: except StopIteration: raise ResourceNotFound(f"Could not find {name} in {self}!") from None - def chain(self, *resolvers: AbstractResolver) -> ResolverChain: + def chain(self, *resolvers: AbstractResolver) -> Self | ResolverChain: """ Return a new resolver that searches this and all given resolvers sequentially.