Commit 3c4b348
committed
Refactor exception handling in operator evaluation
Previously, during operator evaluation we would raise generic failures
for following three reasons:
- A theory was unsupported
- An operator was not supported by a given theory, and
- A failure in the evaluation of an operator
This would make exception handling difficult for apps that need to
gracefully handle failures. For this reason, we refactored the above
exceptions to instead raise a `Eval_error` of type `error_kind`.
Additionally, the refactor included:
- Fixing a couple of bugs when raising the `Type_error` exception.
- Adding all the helpers used for value coercion at the top of the file.
I think it's more organised this way. Only time will tell.
BREAKING: Exception API changed for the `Eval` module1 parent bdefa65 commit 3c4b348
File tree
4 files changed
+393
-481
lines changed- src/smtml
- test/unit
4 files changed
+393
-481
lines changed
0 commit comments