aboutsummaryrefslogtreecommitdiffstats
path: root/gallery_dl/util.py
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2024-08-03 20:27:44 -0400
committerLibravatarUnit 193 <unit193@unit193.net>2024-08-03 20:27:44 -0400
commit032e5bed275a253e122ed9ac86dac7b8c4204172 (patch)
treeb4eda52ebfe00c4d22e9d633b1ab2d158a9f0573 /gallery_dl/util.py
parent80e39a8fc7de105510cbbdca8507f2a4b8c9e01d (diff)
New upstream version 1.27.2.upstream/1.27.2
Diffstat (limited to 'gallery_dl/util.py')
-rw-r--r--gallery_dl/util.py27
1 files changed, 24 insertions, 3 deletions
diff --git a/gallery_dl/util.py b/gallery_dl/util.py
index e76ddf3..5744ef3 100644
--- a/gallery_dl/util.py
+++ b/gallery_dl/util.py
@@ -540,10 +540,14 @@ class CustomNone():
def __bool__():
return False
+ def __eq__(self, other):
+ return self is other
+
+ def __ne__(self, other):
+ return self is not other
+
__lt__ = true
__le__ = true
- __eq__ = false
- __ne__ = true
__gt__ = false
__ge__ = false
@@ -616,11 +620,28 @@ else:
Popen = subprocess.Popen
-def compile_expression(expr, name="<expr>", globals=None):
+def compile_expression_raw(expr, name="<expr>", globals=None):
code_object = compile(expr, name, "eval")
return functools.partial(eval, code_object, globals or GLOBALS)
+def compile_expression_tryexcept(expr, name="<expr>", globals=None):
+ code_object = compile(expr, name, "eval")
+
+ def _eval(locals=None, globals=(globals or GLOBALS), co=code_object):
+ try:
+ return eval(co, globals, locals)
+ except exception.GalleryDLException:
+ raise
+ except Exception:
+ return False
+
+ return _eval
+
+
+compile_expression = compile_expression_tryexcept
+
+
def import_file(path):
"""Import a Python module from a filesystem path"""
path, name = os.path.split(path)