Add traits for inline AsRef
and AsMut
.
#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.
<T as AsRef<U>>.as_ref(t)
is too verbose, and breaks reading right-to-left. I figured this calls for a helper trait forAsRef
andAsMut
invocations.Type inference is pretty good for spots that need you to pass a reference, but for methods on those references, it's not so great. I encountered this when trying to use
Path::display
on anOsStr
throughimpl AsRef<Path> for OsStr
.Naming
I'm not married to the trait or method names. I'm actually torn between
Reffed::reffed
andAsA::as_a
. Thoughts?Documentation
Is what I wrote sufficient? I copied a bit of the style from
Conv
, but mine is more sparse.