Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Somewhat inspired in chronos.
Goal:
How:
read
call. If raises cannot be retrieved, then nothing is set, and the current behavior is kept (raises: [Exception]
).toFutureEx
macro takes an async function call, and it returns the error typed futureFutureEx[T, E]
for passing it around.newFuture()
usage in user code usually leads to inferredException
at some point becauseread(Future)
can raise anything. If the user wants granular raises, they must useFutureEx
.Todo:
all, and, or
FutureEx versionsfail
FutureEx version; can it be done so it only accepts the typed exceptions?