feat: add Error associated type in zio::Ops to handle multiple errors #461
+19
−12
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.
Ops::run and Ops::run_vec return
Result<Status, DecompressError>
.There are 2 implementations of it, in Decompress which everything is all good, and in Compress, which because of the trait, results in the usage of some
.unwrap()
's:flate2-rs/src/zio.rs
Lines 40 to 47 in 5c6eaec
and
flate2-rs/src/zio.rs
Lines 48 to 55 in 5c6eaec
So, adding an associated type in
Ops
covers both.Because of this, these unwraps are also handled now:
flate2-rs/src/zio.rs
Lines 255 to 277 in 5c6eaec
(without the last one, that's here for context)
The trait is used only internally, so no breaking changes and only less possible panics (: