Trait Array

Source
pub unsafe trait Array {
    type Item: Sized;

    // Required methods
    fn as_slice(&self) -> &[Self::Item];
    fn as_mut_slice(&mut self) -> &mut [Self::Item];
}
Expand description

Trait for static arrays.

§Safety

This trait is declared as unsafe to signify that it should only be implemented for static arrays ([T; x] for some size x). Implementing it for other types can result in undefined behavior and instability.

Required Associated Types§

Source

type Item: Sized

Array item type.

Required Methods§

Source

fn as_slice(&self) -> &[Self::Item]

Returns a slice of the entire array.

Source

fn as_mut_slice(&mut self) -> &mut [Self::Item]

Returns a mutable slice of the entire array.

Implementations on Foreign Types§

Source§

impl<T> Array for [T; 1]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 2]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 3]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 4]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 5]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 6]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 7]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 8]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 9]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 10]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 11]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 12]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 13]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 14]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 15]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 16]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 17]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 18]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 19]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 20]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 21]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 22]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 23]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 24]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 25]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 26]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 27]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 28]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 29]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 30]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 31]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 32]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 33]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 34]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 35]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 36]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 37]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 38]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 39]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 40]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 41]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 42]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 43]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 44]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 45]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 46]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 47]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 48]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 49]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 50]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 51]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 52]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 53]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 54]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 55]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 56]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 57]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 58]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 59]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 60]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 61]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 62]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 63]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 64]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 128]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 256]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 512]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 1024]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 2048]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 4096]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 8192]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 16384]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 32768]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 65536]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 131072]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 262144]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 524288]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 1048576]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 2097152]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 4194304]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 8388608]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 16777216]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 33554432]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 67108864]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 134217728]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 268435456]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 536870912]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Source§

impl<T> Array for [T; 1073741824]
where T: Sized,

Source§

type Item = T

Source§

fn as_slice(&self) -> &[T]

Source§

fn as_mut_slice(&mut self) -> &mut [T]

Implementors§