pub struct JaggedArrayMutView<'a, TVal, TNum, const N: usize>where
TNum: AsPrimitive<usize> + Num,
U<N>: Sub<B1>,
<U<N> as Sub<B1>>::Output: ArrayLength,
Const<N>: ToUInt,{ /* private fields */ }
Implementations§
Source§impl<'a, TVal, TNum> JaggedArrayMutView<'a, TVal, TNum, 1>where
TNum: AsPrimitive<usize> + Num + NumAssignOps + PartialOrd + ConstOne + ConstZero,
usize: AsPrimitive<TNum>,
impl<'a, TVal, TNum> JaggedArrayMutView<'a, TVal, TNum, 1>where
TNum: AsPrimitive<usize> + Num + NumAssignOps + PartialOrd + ConstOne + ConstZero,
usize: AsPrimitive<TNum>,
Trait Implementations§
Source§impl<'a, TVal, TNum, const N: usize> Index<[usize; N]> for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> Index<[usize; N]> for JaggedArrayMutView<'a, TVal, TNum, N>
Source§impl<'a, TVal, TNum, const N: usize> IndexMut<[usize; N]> for JaggedArrayMutView<'a, TVal, TNum, N>where
TNum: Num + AsPrimitive<usize>,
U<N>: Sub<B1> + ArrayLength,
<U<N> as Sub<B1>>::Output: ArrayLength,
Const<N>: ToUInt,
impl<'a, TVal, TNum, const N: usize> IndexMut<[usize; N]> for JaggedArrayMutView<'a, TVal, TNum, N>where
TNum: Num + AsPrimitive<usize>,
U<N>: Sub<B1> + ArrayLength,
<U<N> as Sub<B1>>::Output: ArrayLength,
Const<N>: ToUInt,
Source§impl<'a, TVal, TNum, const N: usize> JaggedArrayMutViewTrait<TVal, TNum, N> for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> JaggedArrayMutViewTrait<TVal, TNum, N> for JaggedArrayMutView<'a, TVal, TNum, N>
Source§fn view_mut<const M: usize, const R: usize>(
&mut self,
index: [usize; M],
) -> JaggedArrayMutView<'_, TVal, TNum, R>where
U<N>: Sub<U2> + Sub<B1> + Sub<U<M>>,
<U<N> as Sub<U2>>::Output: ArrayLength,
<U<N> as Sub<B1>>::Output: Sub<B1>,
<<U<N> as Sub<B1>>::Output as Sub<B1>>::Output: ArrayLength,
<U<N> as Sub<U<M>>>::Output: IsEqual<U<R>>,
U<R>: Sub<B1>,
<U<R> as Sub<B1>>::Output: ArrayLength,
<<U<N> as Sub<U<M>>>::Output as IsEqual<U<R>>>::Output: NonZero,
Const<N>: ToUInt,
Const<M>: ToUInt,
Const<R>: ToUInt,
fn view_mut<const M: usize, const R: usize>(
&mut self,
index: [usize; M],
) -> JaggedArrayMutView<'_, TVal, TNum, R>where
U<N>: Sub<U2> + Sub<B1> + Sub<U<M>>,
<U<N> as Sub<U2>>::Output: ArrayLength,
<U<N> as Sub<B1>>::Output: Sub<B1>,
<<U<N> as Sub<B1>>::Output as Sub<B1>>::Output: ArrayLength,
<U<N> as Sub<U<M>>>::Output: IsEqual<U<R>>,
U<R>: Sub<B1>,
<U<R> as Sub<B1>>::Output: ArrayLength,
<<U<N> as Sub<U<M>>>::Output as IsEqual<U<R>>>::Output: NonZero,
Const<N>: ToUInt,
Const<M>: ToUInt,
Const<R>: ToUInt,
Rust const generics does not support arithmetic, so we have to specify the view’s dimension(R) as well
Source§impl<'a, TVal, TNum, const N: usize> JaggedArrayViewTrait<TVal, TNum, N> for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> JaggedArrayViewTrait<TVal, TNum, N> for JaggedArrayMutView<'a, TVal, TNum, N>
Source§fn view<const M: usize, const R: usize>(
&self,
index: [usize; M],
) -> JaggedArrayView<'_, TVal, TNum, R>where
U<N>: Sub<U2> + Sub<B1> + Sub<U<M>>,
<U<N> as Sub<U2>>::Output: ArrayLength,
<U<N> as Sub<B1>>::Output: Sub<B1>,
<<U<N> as Sub<B1>>::Output as Sub<B1>>::Output: ArrayLength,
<U<N> as Sub<U<M>>>::Output: IsEqual<U<R>>,
U<R>: Sub<B1>,
<U<R> as Sub<B1>>::Output: ArrayLength,
<<U<N> as Sub<U<M>>>::Output as IsEqual<U<R>>>::Output: NonZero,
Const<N>: ToUInt,
Const<M>: ToUInt,
Const<R>: ToUInt,
fn view<const M: usize, const R: usize>(
&self,
index: [usize; M],
) -> JaggedArrayView<'_, TVal, TNum, R>where
U<N>: Sub<U2> + Sub<B1> + Sub<U<M>>,
<U<N> as Sub<U2>>::Output: ArrayLength,
<U<N> as Sub<B1>>::Output: Sub<B1>,
<<U<N> as Sub<B1>>::Output as Sub<B1>>::Output: ArrayLength,
<U<N> as Sub<U<M>>>::Output: IsEqual<U<R>>,
U<R>: Sub<B1>,
<U<R> as Sub<B1>>::Output: ArrayLength,
<<U<N> as Sub<U<M>>>::Output as IsEqual<U<R>>>::Output: NonZero,
Const<N>: ToUInt,
Const<M>: ToUInt,
Const<R>: ToUInt,
Rust const generics does not support arithmetic, so we have to specify the view’s dimension(R) as well
Source§unsafe fn view_unchecked<const M: usize, const R: usize>(
&self,
index: [usize; M],
) -> JaggedArrayView<'_, TVal, TNum, R>where
U<N>: Sub<U2> + Sub<B1> + Sub<U<M>>,
<U<N> as Sub<U2>>::Output: ArrayLength,
<U<N> as Sub<B1>>::Output: Sub<B1>,
<<U<N> as Sub<B1>>::Output as Sub<B1>>::Output: ArrayLength,
<U<N> as Sub<U<M>>>::Output: IsEqual<U<R>>,
U<R>: Sub<B1>,
<U<R> as Sub<B1>>::Output: ArrayLength,
<<U<N> as Sub<U<M>>>::Output as IsEqual<U<R>>>::Output: NonZero,
Const<N>: ToUInt,
Const<M>: ToUInt,
Const<R>: ToUInt,
unsafe fn view_unchecked<const M: usize, const R: usize>(
&self,
index: [usize; M],
) -> JaggedArrayView<'_, TVal, TNum, R>where
U<N>: Sub<U2> + Sub<B1> + Sub<U<M>>,
<U<N> as Sub<U2>>::Output: ArrayLength,
<U<N> as Sub<B1>>::Output: Sub<B1>,
<<U<N> as Sub<B1>>::Output as Sub<B1>>::Output: ArrayLength,
<U<N> as Sub<U<M>>>::Output: IsEqual<U<R>>,
U<R>: Sub<B1>,
<U<R> as Sub<B1>>::Output: ArrayLength,
<<U<N> as Sub<U<M>>>::Output as IsEqual<U<R>>>::Output: NonZero,
Const<N>: ToUInt,
Const<M>: ToUInt,
Const<R>: ToUInt,
Rust const generics does not support arithmetic, so we have to specify the view’s dimension(R) as well
fn len(&self) -> usize
fn is_empty(&self) -> bool
fn get(&self, index: [usize; N]) -> Option<&TVal>
fn to_owned(self) -> JaggedArrayOwnedView<TVal, TNum, N>where
TVal: Clone,
Source§impl<'a, TVal: PartialEq, TNum, const N: usize> PartialEq for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal: PartialEq, TNum, const N: usize> PartialEq for JaggedArrayMutView<'a, TVal, TNum, N>
Source§fn eq(&self, other: &JaggedArrayMutView<'a, TVal, TNum, N>) -> bool
fn eq(&self, other: &JaggedArrayMutView<'a, TVal, TNum, N>) -> bool
Tests for
self
and other
values to be equal, and is used by ==
.impl<'a, TVal: Eq, TNum, const N: usize> Eq for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> StructuralPartialEq for JaggedArrayMutView<'a, TVal, TNum, N>
Auto Trait Implementations§
impl<'a, TVal, TNum, const N: usize> !Freeze for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> !RefUnwindSafe for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> Send for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> Sync for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> !Unpin for JaggedArrayMutView<'a, TVal, TNum, N>
impl<'a, TVal, TNum, const N: usize> !UnwindSafe for JaggedArrayMutView<'a, TVal, TNum, N>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more