in pythonflow/operations.py [0:0]
def evaluate(self, context, callback=None):
# Evaluate all dependencies first
callback = callback or _noop_callback
self.evaluate_dependencies(context, callback=callback)
operation, except_, finally_ = self.args
with callback(self, context):
try:
value = self.evaluate_operation(operation, context, callback=callback)
context[self] = value
return value
except: # noqa: E722
# Check the exceptions
_, ex, _ = sys.exc_info()
for type_, alternative in except_:
if isinstance(ex, type_):
value = self.evaluate_operation(alternative, context, callback=callback)
context[self] = value
return value
raise
finally:
if finally_:
self.evaluate_operation(finally_, context)