mirror of
https://github.com/arsenetar/send2trash.git
synced 2025-03-12 06:34:36 +00:00
Merge pull request #88 from PalmtopTiger/iterable-types
Support for any iterable type as input data
This commit is contained in:
commit
0a48c26f68
@ -18,3 +18,8 @@ else:
|
||||
text_type = unicode # noqa: F821
|
||||
binary_type = str
|
||||
environb = os.environ
|
||||
|
||||
try:
|
||||
from collections.abc import Iterable as iterable_type
|
||||
except ImportError:
|
||||
from collections import Iterable as iterable_type
|
||||
|
@ -5,9 +5,13 @@
|
||||
# which should be included with this package. The terms are also available at
|
||||
# http://www.hardcoded.net/licenses/bsd_license
|
||||
|
||||
from send2trash.compat import text_type, binary_type, iterable_type
|
||||
|
||||
|
||||
def preprocess_paths(paths):
|
||||
if not isinstance(paths, list):
|
||||
if isinstance(paths, iterable_type) and not isinstance(paths, (text_type, binary_type)):
|
||||
paths = list(paths)
|
||||
elif not isinstance(paths, list):
|
||||
paths = [paths]
|
||||
# Convert items such as pathlib paths to strings
|
||||
paths = [path.__fspath__() if hasattr(path, "__fspath__") else path for path in paths]
|
||||
|
Loading…
x
Reference in New Issue
Block a user