Replace DisplayAsDisplay and PathAsDisplay with AsDisplay trait #251
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.
Rather than having separate traits implementing as_display method,
replace DisplayAsDisplay and PathAsDisplay traits with a AsDisplay
trait. The difference between those two traits is in the result
returned by the as_display method. With AsDisplay trait this is
captured by an associated type.
The main motivation for the change is making it simpler to support
no_std builds in the future. Previously, PathAsDisplay would have to
be handled specially in such builds on the side of macro
expansion. Now, thiserror-impl doesn’t need to be aware of any
complications around AsDisplay since they are all contained in
thiserror crate.