pub trait Array:
Primitive
+ Sized
+ IntoIterator
+ AsRef<[Self::Item]>
+ AsMut<[Self::Item]>
+ Borrow<[Self::Item]>
+ BorrowMut<[Self::Item]>
+ Index<usize, Output = Self::Item>
+ Index<(Bound<usize>, Bound<usize>), Output = [Self::Item]>
+ Index<Range<usize>, Output = [Self::Item]>
+ Index<RangeInclusive<usize>, Output = [Self::Item]>
+ Index<RangeFrom<usize>, Output = [Self::Item]>
+ Index<RangeTo<usize>, Output = [Self::Item]>
+ Index<RangeToInclusive<usize>, Output = [Self::Item]>
+ Index<RangeFull, Output = [Self::Item]>
+ IndexMut<usize, Output = Self::Item>
+ IndexMut<(Bound<usize>, Bound<usize>), Output = [Self::Item]>
+ IndexMut<Range<usize>, Output = [Self::Item]>
+ IndexMut<RangeInclusive<usize>, Output = [Self::Item]>
+ IndexMut<RangeFrom<usize>, Output = [Self::Item]>
+ IndexMut<RangeTo<usize>, Output = [Self::Item]>
+ IndexMut<RangeToInclusive<usize>, Output = [Self::Item]>
+ IndexMut<RangeFull, Output = [Self::Item]>
+ TryFrom<Vec<Self::Item>>
+ Into<Box<[Self::Item]>>
+ Into<Rc<[Self::Item]>>
+ Into<Arc<[Self::Item]>>
+ Into<Vec<Self::Item>>
+ Into<VecDeque<Self::Item>>
+ Into<LinkedList<Self::Item>> {
const N: usize;
// Required methods
fn as_slice(&self) -> &[Self::Item];
fn as_mut_slice(&mut self) -> &mut [Self::Item];
fn map<F, U>(self, f: F) -> impl Array<Item = U>
where F: FnMut(Self::Item) -> U;
fn each_ref(&self) -> impl Array<Item = &Self::Item>;
fn each_mut(&mut self) -> impl Array<Item = &mut Self::Item>;
}
Required Associated Constants§
Required Methods§
fn as_slice(&self) -> &[Self::Item]
fn as_mut_slice(&mut self) -> &mut [Self::Item]
fn map<F, U>(self, f: F) -> impl Array<Item = U>
fn each_ref(&self) -> impl Array<Item = &Self::Item>
fn each_mut(&mut self) -> impl Array<Item = &mut Self::Item>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.