[][src]Trait tinyvec::Arrayish

pub trait Arrayish {
    type Item: Default;

    const CAPACITY: usize;

    fn slice(&self) -> &[Self::Item];
fn slice_mut(&mut self) -> &mut [Self::Item]; }

A trait for types that can be the backing store of an [ArrayishVec].

You are not generally expected to need to implement this yourself. You can if you want I guess. Impls are provided for arrays of length 0..=32, 33, and powers of 2 up to 4096. Additional lengths can probably be added upon request.

Safety

As a reminder, the Arrayish trait is 100% safe so unsafe code must not rely on an instance of the trait being correct.

Associated Types

type Item: Default

The type of the items in the thing.

Loading content...

Associated Constants

const CAPACITY: usize

The number of slots in the thing.

Loading content...

Required methods

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

Gives a shared slice over the whole thing.

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

Gives a unique slice over the whole thing.

Loading content...

Implementors

impl<T: Default> Arrayish for [T; 0][src]

type Item = T

impl<T: Default> Arrayish for [T; 1][src]

type Item = T

impl<T: Default> Arrayish for [T; 2][src]

type Item = T

impl<T: Default> Arrayish for [T; 3][src]

type Item = T

impl<T: Default> Arrayish for [T; 4][src]

type Item = T

impl<T: Default> Arrayish for [T; 5][src]

type Item = T

impl<T: Default> Arrayish for [T; 6][src]

type Item = T

impl<T: Default> Arrayish for [T; 7][src]

type Item = T

impl<T: Default> Arrayish for [T; 8][src]

type Item = T

impl<T: Default> Arrayish for [T; 9][src]

type Item = T

impl<T: Default> Arrayish for [T; 10][src]

type Item = T

impl<T: Default> Arrayish for [T; 11][src]

type Item = T

impl<T: Default> Arrayish for [T; 12][src]

type Item = T

impl<T: Default> Arrayish for [T; 13][src]

type Item = T

impl<T: Default> Arrayish for [T; 14][src]

type Item = T

impl<T: Default> Arrayish for [T; 15][src]

type Item = T

impl<T: Default> Arrayish for [T; 16][src]

type Item = T

impl<T: Default> Arrayish for [T; 17][src]

type Item = T

impl<T: Default> Arrayish for [T; 18][src]

type Item = T

impl<T: Default> Arrayish for [T; 19][src]

type Item = T

impl<T: Default> Arrayish for [T; 20][src]

type Item = T

impl<T: Default> Arrayish for [T; 21][src]

type Item = T

impl<T: Default> Arrayish for [T; 22][src]

type Item = T

impl<T: Default> Arrayish for [T; 23][src]

type Item = T

impl<T: Default> Arrayish for [T; 24][src]

type Item = T

impl<T: Default> Arrayish for [T; 25][src]

type Item = T

impl<T: Default> Arrayish for [T; 26][src]

type Item = T

impl<T: Default> Arrayish for [T; 27][src]

type Item = T

impl<T: Default> Arrayish for [T; 28][src]

type Item = T

impl<T: Default> Arrayish for [T; 29][src]

type Item = T

impl<T: Default> Arrayish for [T; 30][src]

type Item = T

impl<T: Default> Arrayish for [T; 31][src]

type Item = T

impl<T: Default> Arrayish for [T; 32][src]

type Item = T

impl<T: Default> Arrayish for [T; 33][src]

type Item = T

impl<T: Default> Arrayish for [T; 64][src]

type Item = T

impl<T: Default> Arrayish for [T; 128][src]

type Item = T

impl<T: Default> Arrayish for [T; 256][src]

type Item = T

impl<T: Default> Arrayish for [T; 512][src]

type Item = T

impl<T: Default> Arrayish for [T; 1024][src]

type Item = T

impl<T: Default> Arrayish for [T; 2048][src]

type Item = T

impl<T: Default> Arrayish for [T; 4096][src]

type Item = T

Loading content...