diff options
author | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
---|---|---|
committer | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
commit | 4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch) | |
tree | ee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/flupy/cli/utils.py | |
parent | cc961e04ba734dd72309fb548a2f97d67d578813 (diff) | |
download | gn-ai-master.tar.gz |
Diffstat (limited to '.venv/lib/python3.12/site-packages/flupy/cli/utils.py')
-rw-r--r-- | .venv/lib/python3.12/site-packages/flupy/cli/utils.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/flupy/cli/utils.py b/.venv/lib/python3.12/site-packages/flupy/cli/utils.py new file mode 100644 index 00000000..02ee150b --- /dev/null +++ b/.venv/lib/python3.12/site-packages/flupy/cli/utils.py @@ -0,0 +1,34 @@ +# pylint: disable=invalid-name +import os +from typing import Generator + +from flupy.fluent import Fluent, flu + + +def walk_files(*pathes: str, abspath: bool = True) -> "Fluent[str]": + """Yield files recursively starting from each location in *pathes""" + + if pathes == (): + pathes = (".",) + + def _impl() -> Generator[str, None, None]: + for path in pathes: + for d, _, files in os.walk(path): + for x in files: + rel_path = os.path.join(d, x) + if abspath: + yield os.path.abspath(rel_path) + else: + yield rel_path + + return flu(_impl()) + + +def walk_dirs(path: str = ".") -> "Fluent[str]": + """Yield files recursively starting from *path""" + + def _impl() -> Generator[str, None, None]: + for d, _, _ in os.walk(path): + yield d + + return flu(_impl()) |