BitArray

Trait BitArray 

Source
pub trait BitArray:
    Default
    + Clone
    + Copy {
    type Item: Default + PrimInt;

    // Required methods
    fn len() -> usize;
    fn get(&self, index: usize) -> Self::Item;
    fn get_mut(&mut self, index: usize) -> &mut Self::Item;
}
Expand description

An internal trait used to bypass the fact that rust does not yet have const generics

Required Associated Types§

Source

type Item: Default + PrimInt

The item type this array holds

Required Methods§

Source

fn len() -> usize

Returns how many elements this array can hold

Source

fn get(&self, index: usize) -> Self::Item

Access the element at a specified index.

§Panics

Panics if the index is bigger than the length

Source

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Access a mutable reference to the element at a specified index

§Panics

Panics if the index is bigger than the length

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.

Implementations on Foreign Types§

Source§

impl<T: Default + PrimInt> BitArray for [T; 1]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 2]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 3]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 4]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 5]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 6]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 7]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 8]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 9]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 10]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 11]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 12]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 13]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 14]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 15]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Source§

impl<T: Default + PrimInt> BitArray for [T; 16]

Source§

type Item = T

Source§

fn len() -> usize

Source§

fn get(&self, index: usize) -> Self::Item

Source§

fn get_mut(&mut self, index: usize) -> &mut Self::Item

Implementors§