Trait Addressable

Source
pub trait Addressable<T>:
    Index<usize, Output = T>
    + IndexMut<usize>
    + Index<Range<usize>, Output = [<Self as Index<usize>>::Output]>
    + IndexMut<Range<usize>>
    + Index<RangeFrom<usize>, Output = [<Self as Index<usize>>::Output]>
    + IndexMut<RangeFrom<usize>>
    + Index<RangeTo<usize>, Output = [<Self as Index<usize>>::Output]>
    + IndexMut<RangeTo<usize>>
    + Index<RangeFull, Output = [<Self as Index<usize>>::Output]>
    + IndexMut<RangeFull>
    + Deref<Target = [<Self as Index<usize>>::Output]>
    + DerefMut
where <Self as Index<usize>>::Output: Sized,
{ }

Implementors§

Source§

impl<T, U> Addressable<U> for T
where T: Index<usize, Output = U> + IndexMut<usize> + Index<Range<usize>, Output = [<T as Index<usize>>::Output]> + IndexMut<Range<usize>> + Index<RangeFrom<usize>, Output = [<T as Index<usize>>::Output]> + IndexMut<RangeFrom<usize>> + Index<RangeTo<usize>, Output = [<T as Index<usize>>::Output]> + IndexMut<RangeTo<usize>> + Index<RangeFull, Output = [<T as Index<usize>>::Output]> + IndexMut<RangeFull> + Deref<Target = [<T as Index<usize>>::Output]> + DerefMut, <T as Index<usize>>::Output: Sized,