Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove ArrayOps and SliceOps #30

Merged
merged 1 commit into from
Jan 27, 2024
Merged

Conversation

tarcieri
Copy link
Member

After #24, #25, and #26, these traits don't really need to exist and have largely been replaced by safe type conversions with appropriate bounds.

In lieu of ArrayOps<T, N> we instead can use
U: ArraySize<ArrayType<T> = [T; N]>> as a bound, which albeit a bit more verbose concretely describes the inner type of Array to the compiler.

The cast_slice_(to|from)_core(_mut) methods previously defined on the trait have been preserved, but as static methods of Array, making the change largely a drop in replacement. Places where they were being called as e.g. ArrayOps::cast_slice_to_core just need to be called as Array::cast_slice_to_core instead.

After #24, #25, and #26, these traits don't really need to exist and
have largely been replaced by safe type conversions with appropriate
bounds.

In lieu of `ArrayOps<T, N>` we instead can use
`U: ArraySize<ArrayType<T> = [T; N]>>` as a bound, which albeit a bit
more verbose concretely describes the inner type of `Array` to the
compiler.

The `cast_slice_(to|from)_core(_mut)` methods previously defined on the
trait have been preserved, but as static methods of `Array`, making the
change largely a drop in replacement. Places where they were being
called as e.g. `ArrayOps::cast_slice_to_core` just need to be called as
`Array::cast_slice_to_core` instead.
@tarcieri tarcieri merged commit 46e94f5 into master Jan 27, 2024
14 checks passed
@tarcieri tarcieri deleted the remove-array-ops-and-slice-ops branch January 27, 2024 20:48
tarcieri added a commit to RustCrypto/hashes that referenced this pull request Jan 28, 2024
This was a breaking change: RustCrypto/hybrid-array#30

This PR includes the necessary updates to remain compatible.
tarcieri added a commit to RustCrypto/hashes that referenced this pull request Jan 28, 2024
This was a breaking change: RustCrypto/hybrid-array#30

This PR includes the necessary updates to remain compatible.
tarcieri added a commit to RustCrypto/hashes that referenced this pull request Jan 29, 2024
This was a breaking change: RustCrypto/hybrid-array#30

This PR includes the necessary updates to remain compatible.
tarcieri added a commit to RustCrypto/hashes that referenced this pull request Jan 29, 2024
This was a breaking change: RustCrypto/hybrid-array#30

This PR includes the necessary updates to remain compatible.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants