@@ -662,10 +662,10 @@ impl<T, const N: usize> [T; N] {
662
662
issue = "90091"
663
663
) ]
664
664
#[ inline]
665
- pub fn split_array_ref < const M : usize > ( & self ) -> ( & [ T ; M ] , & [ T ] ) {
665
+ pub const fn split_array_ref < const M : usize > ( & self ) -> ( & [ T ; M ] , & [ T ] ) {
666
666
// FIXME: remove once constraint is encoded in return type
667
667
const { assert ! ( M <= N ) }
668
- ( & self [ .. ] ) . split_array_ref :: < M > ( ) . unwrap ( )
668
+ self . as_slice ( ) . split_array_ref :: < M > ( ) . unwrap ( )
669
669
}
670
670
671
671
/// Divides one mutable array reference into two at an index.
@@ -693,10 +693,10 @@ impl<T, const N: usize> [T; N] {
693
693
issue = "90091"
694
694
) ]
695
695
#[ inline]
696
- pub fn split_array_mut < const M : usize > ( & mut self ) -> ( & mut [ T ; M ] , & mut [ T ] ) {
696
+ pub const fn split_array_mut < const M : usize > ( & mut self ) -> ( & mut [ T ; M ] , & mut [ T ] ) {
697
697
// FIXME: remove once constraint is encoded in return type
698
698
const { assert ! ( M <= N ) }
699
- ( & mut self [ .. ] ) . split_array_mut :: < M > ( ) . unwrap ( )
699
+ ( self as & mut [ T ] ) . split_array_mut :: < M > ( ) . unwrap ( )
700
700
}
701
701
702
702
/// Divides one array reference into two at an index from the end.
@@ -736,10 +736,10 @@ impl<T, const N: usize> [T; N] {
736
736
issue = "90091"
737
737
) ]
738
738
#[ inline]
739
- pub fn rsplit_array_ref < const M : usize > ( & self ) -> ( & [ T ] , & [ T ; M ] ) {
739
+ pub const fn rsplit_array_ref < const M : usize > ( & self ) -> ( & [ T ] , & [ T ; M ] ) {
740
740
// FIXME: remove once constraint is encoded in return type
741
741
const { assert ! ( M <= N ) }
742
- ( & self [ .. ] ) . rsplit_array_ref :: < M > ( ) . unwrap ( )
742
+ self . as_slice ( ) . rsplit_array_ref :: < M > ( ) . unwrap ( )
743
743
}
744
744
745
745
/// Divides one mutable array reference into two at an index from the end.
@@ -767,10 +767,10 @@ impl<T, const N: usize> [T; N] {
767
767
issue = "90091"
768
768
) ]
769
769
#[ inline]
770
- pub fn rsplit_array_mut < const M : usize > ( & mut self ) -> ( & mut [ T ] , & mut [ T ; M ] ) {
770
+ pub const fn rsplit_array_mut < const M : usize > ( & mut self ) -> ( & mut [ T ] , & mut [ T ; M ] ) {
771
771
// FIXME: remove once constraint is encoded in return type
772
772
const { assert ! ( M <= N ) }
773
- ( & mut self [ .. ] ) . rsplit_array_mut :: < M > ( ) . unwrap ( )
773
+ ( self as & mut [ T ] ) . rsplit_array_mut :: < M > ( ) . unwrap ( )
774
774
}
775
775
}
776
776
0 commit comments