[][src]Trait arrayvec::Array

pub unsafe trait Array {
    type Item;

    const CAPACITY: usize;

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

Trait for fixed size arrays.

This trait is implemented for some specific array sizes, see the implementor list below. At the current state of Rust we can't make this fully general for every array size.

The following crate features add more array sizes (and they are not enabled by default due to their impact on compliation speed).

  • array-sizes-33-128: All sizes 33 to 128 are implemented (a few in this range are included by default).
  • array-sizes-129-255: All sizes 129 to 255 are implemented (a few in this range are included by default).

Safety

This trait can only be implemented by fixed-size arrays or types with exactly the representation of a fixed size array (of the right element type and capacity).

Normally this trait is an implementation detail of arrayvec and doesn’t need implementing.

Associated Types

type Item

The array’s element type

Loading content...

Associated Constants

const CAPACITY: usize

The array's element capacity

Loading content...

Required methods

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

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

Loading content...

Implementations on Foreign Types

impl<T> Array for [T; 0][src]

type Item = T

type Index = ()

impl<T> Array for [T; 1][src]

type Item = T

type Index = bool

impl<T> Array for [T; 2][src]

type Item = T

type Index = u8

impl<T> Array for [T; 3][src]

type Item = T

type Index = u8

impl<T> Array for [T; 4][src]

type Item = T

type Index = u8

impl<T> Array for [T; 5][src]

type Item = T

type Index = u8

impl<T> Array for [T; 6][src]

type Item = T

type Index = u8

impl<T> Array for [T; 7][src]

type Item = T

type Index = u8

impl<T> Array for [T; 8][src]

type Item = T

type Index = u8

impl<T> Array for [T; 9][src]

type Item = T

type Index = u8

impl<T> Array for [T; 10][src]

type Item = T

type Index = u8

impl<T> Array for [T; 11][src]

type Item = T

type Index = u8

impl<T> Array for [T; 12][src]

type Item = T

type Index = u8

impl<T> Array for [T; 13][src]

type Item = T

type Index = u8

impl<T> Array for [T; 14][src]

type Item = T

type Index = u8

impl<T> Array for [T; 15][src]

type Item = T

type Index = u8

impl<T> Array for [T; 16][src]

type Item = T

type Index = u8

impl<T> Array for [T; 17][src]

type Item = T

type Index = u8

impl<T> Array for [T; 18][src]

type Item = T

type Index = u8

impl<T> Array for [T; 19][src]

type Item = T

type Index = u8

impl<T> Array for [T; 20][src]

type Item = T

type Index = u8

impl<T> Array for [T; 21][src]

type Item = T

type Index = u8

impl<T> Array for [T; 22][src]

type Item = T

type Index = u8

impl<T> Array for [T; 23][src]

type Item = T

type Index = u8

impl<T> Array for [T; 24][src]

type Item = T

type Index = u8

impl<T> Array for [T; 25][src]

type Item = T

type Index = u8

impl<T> Array for [T; 26][src]

type Item = T

type Index = u8

impl<T> Array for [T; 27][src]

type Item = T

type Index = u8

impl<T> Array for [T; 28][src]

type Item = T

type Index = u8

impl<T> Array for [T; 29][src]

type Item = T

type Index = u8

impl<T> Array for [T; 30][src]

type Item = T

type Index = u8

impl<T> Array for [T; 31][src]

type Item = T

type Index = u8

impl<T> Array for [T; 32][src]

type Item = T

type Index = u8

impl<T> Array for [T; 40][src]

type Item = T

type Index = u8

impl<T> Array for [T; 48][src]

type Item = T

type Index = u8

impl<T> Array for [T; 50][src]

type Item = T

type Index = u8

impl<T> Array for [T; 56][src]

type Item = T

type Index = u8

impl<T> Array for [T; 64][src]

type Item = T

type Index = u8

impl<T> Array for [T; 72][src]

type Item = T

type Index = u8

impl<T> Array for [T; 96][src]

type Item = T

type Index = u8

impl<T> Array for [T; 100][src]

type Item = T

type Index = u8

impl<T> Array for [T; 128][src]

type Item = T

type Index = u8

impl<T> Array for [T; 160][src]

type Item = T

type Index = u8

impl<T> Array for [T; 192][src]

type Item = T

type Index = u8

impl<T> Array for [T; 200][src]

type Item = T

type Index = u8

impl<T> Array for [T; 224][src]

type Item = T

type Index = u8

impl<T> Array for [T; 256][src]

type Item = T

type Index = u16

impl<T> Array for [T; 384][src]

type Item = T

type Index = u16

impl<T> Array for [T; 512][src]

type Item = T

type Index = u16

impl<T> Array for [T; 768][src]

type Item = T

type Index = u16

impl<T> Array for [T; 1024][src]

type Item = T

type Index = u16

impl<T> Array for [T; 2048][src]

type Item = T

type Index = u16

impl<T> Array for [T; 4096][src]

type Item = T

type Index = u16

impl<T> Array for [T; 8192][src]

type Item = T

type Index = u16

impl<T> Array for [T; 16384][src]

type Item = T

type Index = u16

impl<T> Array for [T; 32768][src]

type Item = T

type Index = u16

impl<T> Array for [T; 65536][src]

type Item = T

type Index = u32

Loading content...

Implementors

Loading content...