hybrid-array: reference conversion support #904
Merged
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.
Adds a set of reference conversions to
Array<T, U>
as well as theArrayOps
trait:&Array<T, U>
:From<&[T, N]>
+ TryFrom<&[T]>&mut Array<T, U>
:From<&mut [T, N]>
+TryFrom<&mut [T]>
The implementation uses an unsafe pointer cast to convert a slice into the corresponding reference newtype.
Additionally it adds the following panicking inherent methods to
Array<T, U>
to ease migrating code based onGenericArray
:Array::ref_from_slice
: alternative toGenericArray::from_slice
Array::ref_from_mut_slice
: alternative toGenericArray::from_mut_slice
Array::clone_from_slice
: alternative toGenericArray::clone_from_slice
These methods are marked with TODOs to deprecate them before a final v0.2.0 release, however for now they're not deprecate to ease a migration.