pub struct Span<T, S: Shape, L: Layout = Dense> { /* private fields */ }Expand description
Multidimensional array span.
Implementations§
Source§impl<T, S: Shape, L: Layout> Span<T, S, L>
impl<T, S: Shape, L: Layout> Span<T, S, L>
Sourcepub fn as_mut_ptr(&mut self) -> *mut T
pub fn as_mut_ptr(&mut self) -> *mut T
Returns a mutable pointer to the array buffer.
Sourcepub fn assign<I: IntoExpression<Item: IntoCloned<T>>>(&mut self, expr: I)
pub fn assign<I: IntoExpression<Item: IntoCloned<T>>>(&mut self, expr: I)
Assigns an expression to the array span with broadcasting, cloning elements if needed.
§Panics
Panics if the expression cannot be broadcast to the shape of the array span.
Sourcepub fn axis_expr<const N: usize>(&self) -> AxisExpr<'_, T, S, L, Inner<N>>
pub fn axis_expr<const N: usize>(&self) -> AxisExpr<'_, T, S, L, Inner<N>>
Returns an expression that gives array views iterating over the specified dimension.
When iterating over the outermost dimension, both the unit inner stride and the uniform stride properties are maintained, and the resulting array views have the same layout.
When iterating over the innermost dimension, the uniform stride property is maintained but not unit inner stride, and the resulting array views have flat or strided layout.
When iterating over the other dimensions, the unit inner stride propery is maintained but not uniform stride, and the resulting array views have general or strided layout.
§Panics
Panics if the dimension is out of bounds.
Sourcepub fn axis_expr_mut<const N: usize>(
&mut self,
) -> AxisExprMut<'_, T, S, L, Inner<N>>
pub fn axis_expr_mut<const N: usize>( &mut self, ) -> AxisExprMut<'_, T, S, L, Inner<N>>
Returns a mutable expression that gives array views iterating over the specified dimension.
When iterating over the outermost dimension, both the unit inner stride and the uniform stride properties are maintained, and the resulting array views have the same layout.
When iterating over the innermost dimension, the uniform stride property is maintained but not unit inner stride, and the resulting array views have flat or strided layout.
When iterating over the other dimensions, the unit inner stride propery is maintained but not uniform stride, and the resulting array views have general or strided layout.
§Panics
Panics if the dimension is out of bounds.
Sourcepub fn cols(&self) -> Lanes<'_, T, S, L, Inner<0>>
pub fn cols(&self) -> Lanes<'_, T, S, L, Inner<0>>
Returns an expression that gives column views iterating over the other dimensions.
§Panics
Panics if the rank is not at least 1.
Sourcepub fn cols_mut(&mut self) -> LanesMut<'_, T, S, L, Inner<0>>
pub fn cols_mut(&mut self) -> LanesMut<'_, T, S, L, Inner<0>>
Returns a mutable expression that gives column views iterating over the other dimensions.
§Panics
Panics if the rank is not at least 1.
Sourcepub fn contains(&self, x: &T) -> boolwhere
T: PartialEq,
pub fn contains(&self, x: &T) -> boolwhere
T: PartialEq,
Returns true if the array span contains an element with the given value.
Sourcepub fn dim(&self, index: usize) -> usize
pub fn dim(&self, index: usize) -> usize
Returns the number of elements in the specified dimension.
§Panics
Panics if the dimension is out of bounds.
Sourcepub fn expr_mut(&mut self) -> ExprMut<'_, T, S, L>
pub fn expr_mut(&mut self) -> ExprMut<'_, T, S, L>
Returns a mutable expression over the array span.
Sourcepub fn fill(&mut self, value: T)where
T: Clone,
pub fn fill(&mut self, value: T)where
T: Clone,
Fills the array span with elements by cloning value.
Sourcepub fn fill_with<F: FnMut() -> T>(&mut self, f: F)
pub fn fill_with<F: FnMut() -> T>(&mut self, f: F)
Fills the array span with elements returned by calling a closure repeatedly.
Sourcepub fn flatten(&self) -> Expr<'_, T, Dyn, L::Uniform>
pub fn flatten(&self) -> Expr<'_, T, Dyn, L::Uniform>
Returns a one-dimensional array view of the array span.
§Panics
Panics if the array layout is not uniformly strided.
Sourcepub fn flatten_mut(&mut self) -> ExprMut<'_, T, Dyn, L::Uniform>
pub fn flatten_mut(&mut self) -> ExprMut<'_, T, Dyn, L::Uniform>
Returns a mutable one-dimensional array view over the array span.
§Panics
Panics if the array layout is not uniformly strided.
Sourcepub unsafe fn get_unchecked<I: SpanIndex<T, S, L>>(
&self,
index: I,
) -> &I::Output
pub unsafe fn get_unchecked<I: SpanIndex<T, S, L>>( &self, index: I, ) -> &I::Output
Returns a reference to an element or a subslice, without doing bounds checking.
§Safety
The index must be within bounds of the array span.
Sourcepub unsafe fn get_unchecked_mut<I: SpanIndex<T, S, L>>(
&mut self,
index: I,
) -> &mut I::Output
pub unsafe fn get_unchecked_mut<I: SpanIndex<T, S, L>>( &mut self, index: I, ) -> &mut I::Output
Returns a mutable reference to an element or a subslice, without doing bounds checking.
§Safety
The index must be within bounds of the array span.
Sourcepub fn is_contiguous(&self) -> bool
pub fn is_contiguous(&self) -> bool
Returns true if the array strides are consistent with contiguous memory layout.
Sourcepub fn is_uniformly_strided(&self) -> bool
pub fn is_uniformly_strided(&self) -> bool
Returns true if the array strides are consistent with uniformly strided memory layout.
Sourcepub fn iter_mut(&mut self) -> Iter<ExprMut<'_, T, S, L>> ⓘ
pub fn iter_mut(&mut self) -> Iter<ExprMut<'_, T, S, L>> ⓘ
Returns a mutable iterator over the array span.
Sourcepub fn lanes<const N: usize>(&self) -> Lanes<'_, T, S, L, Inner<N>>
pub fn lanes<const N: usize>(&self) -> Lanes<'_, T, S, L, Inner<N>>
Returns an expression that gives array views over the specified dimension, iterating over the other dimensions.
If the innermost dimension is specified, the resulting array views have dense or flat layout. For other dimensions, the resulting array views have flat layout.
§Panics
Panics if the dimension is out of bounds.
Sourcepub fn lanes_mut<const N: usize>(&mut self) -> LanesMut<'_, T, S, L, Inner<N>>
pub fn lanes_mut<const N: usize>(&mut self) -> LanesMut<'_, T, S, L, Inner<N>>
Returns a mutable expression that gives array views over the specified dimension, iterating over the other dimensions.
If the innermost dimension is specified, the resulting array views have dense or flat layout. For other dimensions, the resulting array views have flat layout.
§Panics
Panics if the dimension is out of bounds.
Sourcepub fn outer_expr(&self) -> AxisExpr<'_, T, S, L, Outer>
pub fn outer_expr(&self) -> AxisExpr<'_, T, S, L, Outer>
Returns an expression that gives array views iterating over the outermost dimension.
Iterating over the outermost dimension maintains both the unit inner stride and the uniform stride properties, and the resulting array views have the same layout.
§Panics
Panics if the rank is not at least 1.
Sourcepub fn outer_expr_mut(&mut self) -> AxisExprMut<'_, T, S, L, Outer>
pub fn outer_expr_mut(&mut self) -> AxisExprMut<'_, T, S, L, Outer>
Returns a mutable expression that gives array views iterating over the outermost dimension.
Iterating over the outermost dimension maintains both the unit inner stride and the uniform stride properties, and the resulting array views have the same layout.
§Panics
Panics if the rank is not at least 1.
Sourcepub fn remap<M: Layout>(&self) -> Expr<'_, T, S, M>
pub fn remap<M: Layout>(&self) -> Expr<'_, T, S, M>
Returns a remapped array view of the array span.
§Panics
Panics if the memory layout is not compatible with the new array layout.
Sourcepub fn remap_mut<M: Layout>(&mut self) -> ExprMut<'_, T, S, M>
pub fn remap_mut<M: Layout>(&mut self) -> ExprMut<'_, T, S, M>
Returns a mutable remapped array view of the array span.
§Panics
Panics if the memory layout is not compatible with the new array layout.
Sourcepub fn reshape<I: IntoShape>(
&self,
shape: I,
) -> Expr<'_, T, I::IntoShape, <I::IntoShape as Shape>::Layout<L::Uniform, L>>
pub fn reshape<I: IntoShape>( &self, shape: I, ) -> Expr<'_, T, I::IntoShape, <I::IntoShape as Shape>::Layout<L::Uniform, L>>
Returns a reshaped array view of the array span, with similar layout.
§Panics
Panics if the array length is changed, or the memory layout is not compatible.
Sourcepub fn reshape_mut<I: IntoShape>(
&mut self,
shape: I,
) -> ExprMut<'_, T, I::IntoShape, <I::IntoShape as Shape>::Layout<L::Uniform, L>>
pub fn reshape_mut<I: IntoShape>( &mut self, shape: I, ) -> ExprMut<'_, T, I::IntoShape, <I::IntoShape as Shape>::Layout<L::Uniform, L>>
Returns a mutable reshaped array view of the array span, with similar layout.
§Panics
Panics if the array length is changed, or the memory layout is not compatible.
Sourcepub fn rows(&self) -> Lanes<'_, T, S, L, Inner<1>>
pub fn rows(&self) -> Lanes<'_, T, S, L, Inner<1>>
Returns an expression that gives row views iterating over the other dimensions.
§Panics
Panics if the rank is not at least 2.
Sourcepub fn rows_mut(&mut self) -> LanesMut<'_, T, S, L, Inner<1>>
pub fn rows_mut(&mut self) -> LanesMut<'_, T, S, L, Inner<1>>
Returns a mutable expression that gives row views iterating over the other dimensions.
§Panics
Panics if the rank is not at least 2.
Sourcepub fn split_at(
&self,
mid: usize,
) -> (Expr<'_, T, <Outer as Axis>::Replace<Dyn, S>, L>, Expr<'_, T, <Outer as Axis>::Replace<Dyn, S>, L>)
pub fn split_at( &self, mid: usize, ) -> (Expr<'_, T, <Outer as Axis>::Replace<Dyn, S>, L>, Expr<'_, T, <Outer as Axis>::Replace<Dyn, S>, L>)
Divides an array span into two at an index along the outermost dimension.
§Panics
Panics if the split point is larger than the number of elements in that dimension, or if the rank is not at least 1.
Sourcepub fn split_at_mut(
&mut self,
mid: usize,
) -> (ExprMut<'_, T, <Outer as Axis>::Replace<Dyn, S>, L>, ExprMut<'_, T, <Outer as Axis>::Replace<Dyn, S>, L>)
pub fn split_at_mut( &mut self, mid: usize, ) -> (ExprMut<'_, T, <Outer as Axis>::Replace<Dyn, S>, L>, ExprMut<'_, T, <Outer as Axis>::Replace<Dyn, S>, L>)
Divides a mutable array span into two at an index along the outermost dimension.
§Panics
Panics if the split point is larger than the number of elements in that dimension, or if the rank is not at least 1.
Sourcepub fn split_axis_at<const N: usize>(
&self,
mid: usize,
) -> (Expr<'_, T, <Inner<N> as Axis>::Replace<Dyn, S>, <Inner<N> as Axis>::Resize<S, L>>, Expr<'_, T, <Inner<N> as Axis>::Replace<Dyn, S>, <Inner<N> as Axis>::Resize<S, L>>)
pub fn split_axis_at<const N: usize>( &self, mid: usize, ) -> (Expr<'_, T, <Inner<N> as Axis>::Replace<Dyn, S>, <Inner<N> as Axis>::Resize<S, L>>, Expr<'_, T, <Inner<N> as Axis>::Replace<Dyn, S>, <Inner<N> as Axis>::Resize<S, L>>)
Divides an array span into two at an index along the specified dimension.
§Panics
Panics if the split point is larger than the number of elements in that dimension, or if the dimension is out of bounds.
Sourcepub fn split_axis_at_mut<const N: usize>(
&mut self,
mid: usize,
) -> (ExprMut<'_, T, <Inner<N> as Axis>::Replace<Dyn, S>, <Inner<N> as Axis>::Resize<S, L>>, ExprMut<'_, T, <Inner<N> as Axis>::Replace<Dyn, S>, <Inner<N> as Axis>::Resize<S, L>>)
pub fn split_axis_at_mut<const N: usize>( &mut self, mid: usize, ) -> (ExprMut<'_, T, <Inner<N> as Axis>::Replace<Dyn, S>, <Inner<N> as Axis>::Resize<S, L>>, ExprMut<'_, T, <Inner<N> as Axis>::Replace<Dyn, S>, <Inner<N> as Axis>::Resize<S, L>>)
Divides a mutable array span into two at an index along the specified dimension.
§Panics
Panics if the split point is larger than the number of elements in that dimension, or if the dimension is out of bounds.
Source§impl<T, X: Dim, Y: Dim, L: Layout> Span<T, (X, Y), L>
impl<T, X: Dim, Y: Dim, L: Layout> Span<T, (X, Y), L>
Sourcepub fn col_mut(&mut self, index: usize) -> ExprMut<'_, T, X, L::Uniform>
pub fn col_mut(&mut self, index: usize) -> ExprMut<'_, T, X, L::Uniform>
Returns a mutable array view for the specified column.
§Panics
Panics if the index is out of bounds.
Sourcepub fn diag(&self, index: isize) -> Expr<'_, T, Dyn, Flat>
pub fn diag(&self, index: isize) -> Expr<'_, T, Dyn, Flat>
Returns an array view for the given diagonal of the array span,
where index > 0 is above and index < 0 is below the main diagonal.
§Panics
Panics if the absolute index is larger than the number of columns or rows.
Sourcepub fn diag_mut(&mut self, index: isize) -> ExprMut<'_, T, Dyn, Flat>
pub fn diag_mut(&mut self, index: isize) -> ExprMut<'_, T, Dyn, Flat>
Returns a mutable array view for the given diagonal of the array span,
where index > 0 is above and index < 0 is below the main diagonal.
§Panics
Panics if the absolute index is larger than the number of columns or rows.
Source§impl<T, X: Dim, L: Layout> Span<T, X, L>
impl<T, X: Dim, L: Layout> Span<T, X, L>
Sourcepub fn permute<const A: usize>(
&self,
) -> Expr<'_, T, <(Const<A>,) as Permutation>::Shape<X>, <(Const<A>,) as Permutation>::Layout<L>>where
(Const<A>,): Permutation,
pub fn permute<const A: usize>(
&self,
) -> Expr<'_, T, <(Const<A>,) as Permutation>::Shape<X>, <(Const<A>,) as Permutation>::Layout<L>>where
(Const<A>,): Permutation,
Returns an array view with the dimensions permuted.
Sourcepub fn permute_mut<const A: usize>(
&mut self,
) -> ExprMut<'_, T, <(Const<A>,) as Permutation>::Shape<X>, <(Const<A>,) as Permutation>::Layout<L>>where
(Const<A>,): Permutation,
pub fn permute_mut<const A: usize>(
&mut self,
) -> ExprMut<'_, T, <(Const<A>,) as Permutation>::Shape<X>, <(Const<A>,) as Permutation>::Layout<L>>where
(Const<A>,): Permutation,
Returns a mutable array view with the dimensions permuted.
Source§impl<T, X: Dim, Y: Dim, L: Layout> Span<T, (X, Y), L>
impl<T, X: Dim, Y: Dim, L: Layout> Span<T, (X, Y), L>
Sourcepub fn permute<const A: usize, const B: usize>(
&self,
) -> Expr<'_, T, <(Const<A>, Const<B>) as Permutation>::Shape<(X, Y)>, <(Const<A>, Const<B>) as Permutation>::Layout<L>>
pub fn permute<const A: usize, const B: usize>( &self, ) -> Expr<'_, T, <(Const<A>, Const<B>) as Permutation>::Shape<(X, Y)>, <(Const<A>, Const<B>) as Permutation>::Layout<L>>
Returns an array view with the dimensions permuted.
Sourcepub fn permute_mut<const A: usize, const B: usize>(
&mut self,
) -> ExprMut<'_, T, <(Const<A>, Const<B>) as Permutation>::Shape<(X, Y)>, <(Const<A>, Const<B>) as Permutation>::Layout<L>>
pub fn permute_mut<const A: usize, const B: usize>( &mut self, ) -> ExprMut<'_, T, <(Const<A>, Const<B>) as Permutation>::Shape<(X, Y)>, <(Const<A>, Const<B>) as Permutation>::Layout<L>>
Returns a mutable array view with the dimensions permuted.
Source§impl<T, X: Dim, Y: Dim, Z: Dim, L: Layout> Span<T, (X, Y, Z), L>
impl<T, X: Dim, Y: Dim, Z: Dim, L: Layout> Span<T, (X, Y, Z), L>
Sourcepub fn permute<const A: usize, const B: usize, const C: usize>(
&self,
) -> Expr<'_, T, <(Const<A>, Const<B>, Const<C>) as Permutation>::Shape<(X, Y, Z)>, <(Const<A>, Const<B>, Const<C>) as Permutation>::Layout<L>>
pub fn permute<const A: usize, const B: usize, const C: usize>( &self, ) -> Expr<'_, T, <(Const<A>, Const<B>, Const<C>) as Permutation>::Shape<(X, Y, Z)>, <(Const<A>, Const<B>, Const<C>) as Permutation>::Layout<L>>
Returns an array view with the dimensions permuted.
Source§impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, L: Layout> Span<T, (X, Y, Z, W), L>
impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, L: Layout> Span<T, (X, Y, Z, W), L>
Sourcepub fn permute<const A: usize, const B: usize, const C: usize, const D: usize>(
&self,
) -> Expr<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>) as Permutation>::Shape<(X, Y, Z, W)>, <(Const<A>, Const<B>, Const<C>, Const<D>) as Permutation>::Layout<L>>
pub fn permute<const A: usize, const B: usize, const C: usize, const D: usize>( &self, ) -> Expr<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>) as Permutation>::Shape<(X, Y, Z, W)>, <(Const<A>, Const<B>, Const<C>, Const<D>) as Permutation>::Layout<L>>
Returns an array view with the dimensions permuted.
Sourcepub fn permute_mut<const A: usize, const B: usize, const C: usize, const D: usize>(
&mut self,
) -> ExprMut<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>) as Permutation>::Shape<(X, Y, Z, W)>, <(Const<A>, Const<B>, Const<C>, Const<D>) as Permutation>::Layout<L>>
pub fn permute_mut<const A: usize, const B: usize, const C: usize, const D: usize>( &mut self, ) -> ExprMut<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>) as Permutation>::Shape<(X, Y, Z, W)>, <(Const<A>, Const<B>, Const<C>, Const<D>) as Permutation>::Layout<L>>
Returns a mutable array view with the dimensions permuted.
Source§impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, U: Dim, L: Layout> Span<T, (X, Y, Z, W, U), L>
impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, U: Dim, L: Layout> Span<T, (X, Y, Z, W, U), L>
Sourcepub fn permute<const A: usize, const B: usize, const C: usize, const D: usize, const E: usize>(
&self,
) -> Expr<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>) as Permutation>::Shape<(X, Y, Z, W, U)>, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>) as Permutation>::Layout<L>>
pub fn permute<const A: usize, const B: usize, const C: usize, const D: usize, const E: usize>( &self, ) -> Expr<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>) as Permutation>::Shape<(X, Y, Z, W, U)>, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>) as Permutation>::Layout<L>>
Returns an array view with the dimensions permuted.
Sourcepub fn permute_mut<const A: usize, const B: usize, const C: usize, const D: usize, const E: usize>(
&mut self,
) -> ExprMut<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>) as Permutation>::Shape<(X, Y, Z, W, U)>, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>) as Permutation>::Layout<L>>
pub fn permute_mut<const A: usize, const B: usize, const C: usize, const D: usize, const E: usize>( &mut self, ) -> ExprMut<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>) as Permutation>::Shape<(X, Y, Z, W, U)>, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>) as Permutation>::Layout<L>>
Returns a mutable array view with the dimensions permuted.
Source§impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, U: Dim, V: Dim, L: Layout> Span<T, (X, Y, Z, W, U, V), L>
impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, U: Dim, V: Dim, L: Layout> Span<T, (X, Y, Z, W, U, V), L>
Sourcepub fn permute<const A: usize, const B: usize, const C: usize, const D: usize, const E: usize, const F: usize>(
&self,
) -> Expr<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>, Const<F>) as Permutation>::Shape<(X, Y, Z, W, U, V)>, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>, Const<F>) as Permutation>::Layout<L>>
pub fn permute<const A: usize, const B: usize, const C: usize, const D: usize, const E: usize, const F: usize>( &self, ) -> Expr<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>, Const<F>) as Permutation>::Shape<(X, Y, Z, W, U, V)>, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>, Const<F>) as Permutation>::Layout<L>>
Returns an array view with the dimensions permuted.
Sourcepub fn permute_mut<const A: usize, const B: usize, const C: usize, const D: usize, const E: usize, const F: usize>(
&mut self,
) -> ExprMut<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>, Const<F>) as Permutation>::Shape<(X, Y, Z, W, U, V)>, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>, Const<F>) as Permutation>::Layout<L>>
pub fn permute_mut<const A: usize, const B: usize, const C: usize, const D: usize, const E: usize, const F: usize>( &mut self, ) -> ExprMut<'_, T, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>, Const<F>) as Permutation>::Shape<(X, Y, Z, W, U, V)>, <(Const<A>, Const<B>, Const<C>, Const<D>, Const<E>, Const<F>) as Permutation>::Layout<L>>
Returns a mutable array view with the dimensions permuted.
Source§impl<T, X: Dim, L: Layout> Span<T, X, L>
impl<T, X: Dim, L: Layout> Span<T, X, L>
Source§impl<T, X: Dim, Y: Dim, L: Layout> Span<T, (X, Y), L>
impl<T, X: Dim, Y: Dim, L: Layout> Span<T, (X, Y), L>
Source§impl<T, X: Dim, Y: Dim, Z: Dim, L: Layout> Span<T, (X, Y, Z), L>
impl<T, X: Dim, Y: Dim, Z: Dim, L: Layout> Span<T, (X, Y, Z), L>
Sourcepub fn grid<A: DimIndex, B: DimIndex, C: DimIndex>(
&self,
a: A,
b: B,
c: C,
) -> Grid<T, <(A, B, C) as ViewIndex>::Shape<(X, Y, Z)>>where
T: Clone,
pub fn grid<A: DimIndex, B: DimIndex, C: DimIndex>(
&self,
a: A,
b: B,
c: C,
) -> Grid<T, <(A, B, C) as ViewIndex>::Shape<(X, Y, Z)>>where
T: Clone,
Sourcepub fn view<A: DimIndex, B: DimIndex, C: DimIndex>(
&self,
a: A,
b: B,
c: C,
) -> Expr<'_, T, <(A, B, C) as ViewIndex>::Shape<(X, Y, Z)>, <(A, B, C) as ViewIndex>::Layout<(X, Y, Z), L>>
pub fn view<A: DimIndex, B: DimIndex, C: DimIndex>( &self, a: A, b: B, c: C, ) -> Expr<'_, T, <(A, B, C) as ViewIndex>::Shape<(X, Y, Z)>, <(A, B, C) as ViewIndex>::Layout<(X, Y, Z), L>>
Sourcepub fn view_mut<A: DimIndex, B: DimIndex, C: DimIndex>(
&mut self,
a: A,
b: B,
c: C,
) -> ExprMut<'_, T, <(A, B, C) as ViewIndex>::Shape<(X, Y, Z)>, <(A, B, C) as ViewIndex>::Layout<(X, Y, Z), L>>
pub fn view_mut<A: DimIndex, B: DimIndex, C: DimIndex>( &mut self, a: A, b: B, c: C, ) -> ExprMut<'_, T, <(A, B, C) as ViewIndex>::Shape<(X, Y, Z)>, <(A, B, C) as ViewIndex>::Layout<(X, Y, Z), L>>
Returns a mutable array view for the specified subarray.
§Panics
Panics if the subarray is out of bounds.
Source§impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, L: Layout> Span<T, (X, Y, Z, W), L>
impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, L: Layout> Span<T, (X, Y, Z, W), L>
Sourcepub fn grid<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
) -> Grid<T, <(A, B, C, D) as ViewIndex>::Shape<(X, Y, Z, W)>>where
T: Clone,
pub fn grid<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
) -> Grid<T, <(A, B, C, D) as ViewIndex>::Shape<(X, Y, Z, W)>>where
T: Clone,
Sourcepub fn view<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
) -> Expr<'_, T, <(A, B, C, D) as ViewIndex>::Shape<(X, Y, Z, W)>, <(A, B, C, D) as ViewIndex>::Layout<(X, Y, Z, W), L>>
pub fn view<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex>( &self, a: A, b: B, c: C, d: D, ) -> Expr<'_, T, <(A, B, C, D) as ViewIndex>::Shape<(X, Y, Z, W)>, <(A, B, C, D) as ViewIndex>::Layout<(X, Y, Z, W), L>>
Sourcepub fn view_mut<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex>(
&mut self,
a: A,
b: B,
c: C,
d: D,
) -> ExprMut<'_, T, <(A, B, C, D) as ViewIndex>::Shape<(X, Y, Z, W)>, <(A, B, C, D) as ViewIndex>::Layout<(X, Y, Z, W), L>>
pub fn view_mut<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex>( &mut self, a: A, b: B, c: C, d: D, ) -> ExprMut<'_, T, <(A, B, C, D) as ViewIndex>::Shape<(X, Y, Z, W)>, <(A, B, C, D) as ViewIndex>::Layout<(X, Y, Z, W), L>>
Returns a mutable array view for the specified subarray.
§Panics
Panics if the subarray is out of bounds.
Source§impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, U: Dim, L: Layout> Span<T, (X, Y, Z, W, U), L>
impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, U: Dim, L: Layout> Span<T, (X, Y, Z, W, U), L>
Sourcepub fn grid<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
e: E,
) -> Grid<T, <(A, B, C, D, E) as ViewIndex>::Shape<(X, Y, Z, W, U)>>where
T: Clone,
pub fn grid<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
e: E,
) -> Grid<T, <(A, B, C, D, E) as ViewIndex>::Shape<(X, Y, Z, W, U)>>where
T: Clone,
Sourcepub fn view<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
e: E,
) -> Expr<'_, T, <(A, B, C, D, E) as ViewIndex>::Shape<(X, Y, Z, W, U)>, <(A, B, C, D, E) as ViewIndex>::Layout<(X, Y, Z, W, U), L>>
pub fn view<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex>( &self, a: A, b: B, c: C, d: D, e: E, ) -> Expr<'_, T, <(A, B, C, D, E) as ViewIndex>::Shape<(X, Y, Z, W, U)>, <(A, B, C, D, E) as ViewIndex>::Layout<(X, Y, Z, W, U), L>>
Sourcepub fn view_mut<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex>(
&mut self,
a: A,
b: B,
c: C,
d: D,
e: E,
) -> ExprMut<'_, T, <(A, B, C, D, E) as ViewIndex>::Shape<(X, Y, Z, W, U)>, <(A, B, C, D, E) as ViewIndex>::Layout<(X, Y, Z, W, U), L>>
pub fn view_mut<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex>( &mut self, a: A, b: B, c: C, d: D, e: E, ) -> ExprMut<'_, T, <(A, B, C, D, E) as ViewIndex>::Shape<(X, Y, Z, W, U)>, <(A, B, C, D, E) as ViewIndex>::Layout<(X, Y, Z, W, U), L>>
Returns a mutable array view for the specified subarray.
§Panics
Panics if the subarray is out of bounds.
Source§impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, U: Dim, V: Dim, L: Layout> Span<T, (X, Y, Z, W, U, V), L>
impl<T, X: Dim, Y: Dim, Z: Dim, W: Dim, U: Dim, V: Dim, L: Layout> Span<T, (X, Y, Z, W, U, V), L>
Sourcepub fn grid<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex, F: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
e: E,
f: F,
) -> Grid<T, <(A, B, C, D, E, F) as ViewIndex>::Shape<(X, Y, Z, W, U, V)>>where
T: Clone,
pub fn grid<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex, F: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
e: E,
f: F,
) -> Grid<T, <(A, B, C, D, E, F) as ViewIndex>::Shape<(X, Y, Z, W, U, V)>>where
T: Clone,
Sourcepub fn view<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex, F: DimIndex>(
&self,
a: A,
b: B,
c: C,
d: D,
e: E,
f: F,
) -> Expr<'_, T, <(A, B, C, D, E, F) as ViewIndex>::Shape<(X, Y, Z, W, U, V)>, <(A, B, C, D, E, F) as ViewIndex>::Layout<(X, Y, Z, W, U, V), L>>
pub fn view<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex, F: DimIndex>( &self, a: A, b: B, c: C, d: D, e: E, f: F, ) -> Expr<'_, T, <(A, B, C, D, E, F) as ViewIndex>::Shape<(X, Y, Z, W, U, V)>, <(A, B, C, D, E, F) as ViewIndex>::Layout<(X, Y, Z, W, U, V), L>>
Sourcepub fn view_mut<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex, F: DimIndex>(
&mut self,
a: A,
b: B,
c: C,
d: D,
e: E,
f: F,
) -> ExprMut<'_, T, <(A, B, C, D, E, F) as ViewIndex>::Shape<(X, Y, Z, W, U, V)>, <(A, B, C, D, E, F) as ViewIndex>::Layout<(X, Y, Z, W, U, V), L>>
pub fn view_mut<A: DimIndex, B: DimIndex, C: DimIndex, D: DimIndex, E: DimIndex, F: DimIndex>( &mut self, a: A, b: B, c: C, d: D, e: E, f: F, ) -> ExprMut<'_, T, <(A, B, C, D, E, F) as ViewIndex>::Shape<(X, Y, Z, W, U, V)>, <(A, B, C, D, E, F) as ViewIndex>::Layout<(X, Y, Z, W, U, V), L>>
Returns a mutable array view for the specified subarray.
§Panics
Panics if the subarray is out of bounds.
Trait Implementations§
Source§impl<T, S: Shape, L: Layout, I: IntoExpression> AddAssign<I> for Span<T, S, L>
impl<T, S: Shape, L: Layout, I: IntoExpression> AddAssign<I> for Span<T, S, L>
Source§fn add_assign(&mut self, rhs: I)
fn add_assign(&mut self, rhs: I)
+= operation. Read moreSource§impl<'a, T, U, S: Shape, L: Layout> Apply<U> for &'a Span<T, S, L>
impl<'a, T, U, S: Shape, L: Layout> Apply<U> for &'a Span<T, S, L>
Source§type Output<F: FnMut(&'a T) -> U> = Map<<&'a Span<T, S, L> as IntoExpression>::IntoExpr, F>
type Output<F: FnMut(&'a T) -> U> = Map<<&'a Span<T, S, L> as IntoExpression>::IntoExpr, F>
Source§type ZippedWith<I: IntoExpression, F: FnMut((&'a T, I::Item)) -> U> = Map<Zip<<&'a Span<T, S, L> as IntoExpression>::IntoExpr, <I as IntoExpression>::IntoExpr>, F>
type ZippedWith<I: IntoExpression, F: FnMut((&'a T, I::Item)) -> U> = Map<Zip<<&'a Span<T, S, L> as IntoExpression>::IntoExpr, <I as IntoExpression>::IntoExpr>, F>
Source§fn apply<F: FnMut(&'a T) -> U>(self, f: F) -> Self::Output<F>
fn apply<F: FnMut(&'a T) -> U>(self, f: F) -> Self::Output<F>
Source§fn zip_with<I: IntoExpression, F>(self, expr: I, f: F) -> Self::ZippedWith<I, F>
fn zip_with<I: IntoExpression, F>(self, expr: I, f: F) -> Self::ZippedWith<I, F>
Source§impl<'a, T, U, S: Shape, L: Layout> Apply<U> for &'a mut Span<T, S, L>
impl<'a, T, U, S: Shape, L: Layout> Apply<U> for &'a mut Span<T, S, L>
Source§type Output<F: FnMut(&'a mut T) -> U> = Map<<&'a mut Span<T, S, L> as IntoExpression>::IntoExpr, F>
type Output<F: FnMut(&'a mut T) -> U> = Map<<&'a mut Span<T, S, L> as IntoExpression>::IntoExpr, F>
Source§type ZippedWith<I: IntoExpression, F: FnMut((&'a mut T, I::Item)) -> U> = Map<Zip<<&'a mut Span<T, S, L> as IntoExpression>::IntoExpr, <I as IntoExpression>::IntoExpr>, F>
type ZippedWith<I: IntoExpression, F: FnMut((&'a mut T, I::Item)) -> U> = Map<Zip<<&'a mut Span<T, S, L> as IntoExpression>::IntoExpr, <I as IntoExpression>::IntoExpr>, F>
Source§fn apply<F: FnMut(&'a mut T) -> U>(self, f: F) -> Self::Output<F>
fn apply<F: FnMut(&'a mut T) -> U>(self, f: F) -> Self::Output<F>
Source§fn zip_with<I: IntoExpression, F>(self, expr: I, f: F) -> Self::ZippedWith<I, F>
fn zip_with<I: IntoExpression, F>(self, expr: I, f: F) -> Self::ZippedWith<I, F>
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize, const V: usize> AsMut<[[[[[[T; X]; Y]; Z]; W]; U]; V]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>, Const<V>)>
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize, const V: usize> AsMut<[[[[[[T; X]; Y]; Z]; W]; U]; V]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>, Const<V>)>
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize> AsMut<[[[[[T; X]; Y]; Z]; W]; U]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>)>
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize> AsMut<[[[[[T; X]; Y]; Z]; W]; U]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>)>
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize> AsMut<[[[[T; X]; Y]; Z]; W]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>)>
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize> AsMut<[[[[T; X]; Y]; Z]; W]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>)>
Source§impl<T, const X: usize, const Y: usize, const Z: usize> AsMut<[[[T; X]; Y]; Z]> for Span<T, (Const<X>, Const<Y>, Const<Z>)>
impl<T, const X: usize, const Y: usize, const Z: usize> AsMut<[[[T; X]; Y]; Z]> for Span<T, (Const<X>, Const<Y>, Const<Z>)>
Source§impl<T, const X: usize, const Y: usize, const Z: usize> AsMut<Span<T, (Const<X>, Const<Y>, Const<Z>)>> for [[[T; X]; Y]; Z]
impl<T, const X: usize, const Y: usize, const Z: usize> AsMut<Span<T, (Const<X>, Const<Y>, Const<Z>)>> for [[[T; X]; Y]; Z]
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize> AsMut<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>)>> for [[[[T; X]; Y]; Z]; W]
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize> AsMut<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>)>> for [[[[T; X]; Y]; Z]; W]
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize> AsMut<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>)>> for [[[[[T; X]; Y]; Z]; W]; U]
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize> AsMut<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>)>> for [[[[[T; X]; Y]; Z]; W]; U]
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize, const V: usize> AsMut<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>, Const<V>)>> for [[[[[[T; X]; Y]; Z]; W]; U]; V]
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize, const V: usize> AsMut<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>, Const<V>)>> for [[[[[[T; X]; Y]; Z]; W]; U]; V]
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize, const V: usize> AsRef<[[[[[[T; X]; Y]; Z]; W]; U]; V]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>, Const<V>)>
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize, const V: usize> AsRef<[[[[[[T; X]; Y]; Z]; W]; U]; V]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>, Const<V>)>
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize> AsRef<[[[[[T; X]; Y]; Z]; W]; U]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>)>
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize> AsRef<[[[[[T; X]; Y]; Z]; W]; U]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>)>
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize> AsRef<[[[[T; X]; Y]; Z]; W]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>)>
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize> AsRef<[[[[T; X]; Y]; Z]; W]> for Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>)>
Source§impl<T, const X: usize, const Y: usize, const Z: usize> AsRef<[[[T; X]; Y]; Z]> for Span<T, (Const<X>, Const<Y>, Const<Z>)>
impl<T, const X: usize, const Y: usize, const Z: usize> AsRef<[[[T; X]; Y]; Z]> for Span<T, (Const<X>, Const<Y>, Const<Z>)>
Source§impl<T, const X: usize, const Y: usize, const Z: usize> AsRef<Span<T, (Const<X>, Const<Y>, Const<Z>)>> for [[[T; X]; Y]; Z]
impl<T, const X: usize, const Y: usize, const Z: usize> AsRef<Span<T, (Const<X>, Const<Y>, Const<Z>)>> for [[[T; X]; Y]; Z]
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize> AsRef<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>)>> for [[[[T; X]; Y]; Z]; W]
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize> AsRef<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>)>> for [[[[T; X]; Y]; Z]; W]
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize> AsRef<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>)>> for [[[[[T; X]; Y]; Z]; W]; U]
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize> AsRef<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>)>> for [[[[[T; X]; Y]; Z]; W]; U]
Source§impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize, const V: usize> AsRef<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>, Const<V>)>> for [[[[[[T; X]; Y]; Z]; W]; U]; V]
impl<T, const X: usize, const Y: usize, const Z: usize, const W: usize, const U: usize, const V: usize> AsRef<Span<T, (Const<X>, Const<Y>, Const<Z>, Const<W>, Const<U>, Const<V>)>> for [[[[[[T; X]; Y]; Z]; W]; U]; V]
Source§impl<T, S: Shape, L: Layout, I: IntoExpression> BitAndAssign<I> for Span<T, S, L>where
T: BitAndAssign<I::Item>,
impl<T, S: Shape, L: Layout, I: IntoExpression> BitAndAssign<I> for Span<T, S, L>where
T: BitAndAssign<I::Item>,
Source§fn bitand_assign(&mut self, rhs: I)
fn bitand_assign(&mut self, rhs: I)
&= operation. Read moreSource§impl<T, S: Shape, L: Layout, I: IntoExpression> BitOrAssign<I> for Span<T, S, L>where
T: BitOrAssign<I::Item>,
impl<T, S: Shape, L: Layout, I: IntoExpression> BitOrAssign<I> for Span<T, S, L>where
T: BitOrAssign<I::Item>,
Source§fn bitor_assign(&mut self, rhs: I)
fn bitor_assign(&mut self, rhs: I)
|= operation. Read moreSource§impl<T, S: Shape, L: Layout, I: IntoExpression> BitXorAssign<I> for Span<T, S, L>where
T: BitXorAssign<I::Item>,
impl<T, S: Shape, L: Layout, I: IntoExpression> BitXorAssign<I> for Span<T, S, L>where
T: BitXorAssign<I::Item>,
Source§fn bitxor_assign(&mut self, rhs: I)
fn bitxor_assign(&mut self, rhs: I)
^= operation. Read moreSource§impl<T, S: ConstShape> BorrowMut<Span<T, S>> for Array<T, S>
impl<T, S: ConstShape> BorrowMut<Span<T, S>> for Array<T, S>
Source§fn borrow_mut(&mut self) -> &mut Span<T, S>
fn borrow_mut(&mut self) -> &mut Span<T, S>
Source§impl<T, S: Shape, A: Allocator> BorrowMut<Span<T, S>> for Grid<T, S, A>
impl<T, S: Shape, A: Allocator> BorrowMut<Span<T, S>> for Grid<T, S, A>
Source§fn borrow_mut(&mut self) -> &mut Span<T, S>
fn borrow_mut(&mut self) -> &mut Span<T, S>
Source§impl<T, S: Shape, L: Layout> BorrowMut<Span<T, S, L>> for ExprMut<'_, T, S, L>
impl<T, S: Shape, L: Layout> BorrowMut<Span<T, S, L>> for ExprMut<'_, T, S, L>
Source§fn borrow_mut(&mut self) -> &mut Span<T, S, L>
fn borrow_mut(&mut self) -> &mut Span<T, S, L>
Source§impl<T, S: Shape, L: Layout, I: IntoExpression> DivAssign<I> for Span<T, S, L>
impl<T, S: Shape, L: Layout, I: IntoExpression> DivAssign<I> for Span<T, S, L>
Source§fn div_assign(&mut self, rhs: I)
fn div_assign(&mut self, rhs: I)
/= operation. Read moreSource§impl<T, S: Shape, L: Layout, I: IntoExpression> MulAssign<I> for Span<T, S, L>
impl<T, S: Shape, L: Layout, I: IntoExpression> MulAssign<I> for Span<T, S, L>
Source§fn mul_assign(&mut self, rhs: I)
fn mul_assign(&mut self, rhs: I)
*= operation. Read moreSource§impl<U, V, S: Shape, T: Shape, L: Layout, M: Layout, I: ?Sized> PartialEq<I> for Span<U, S, L>
impl<U, V, S: Shape, T: Shape, L: Layout, M: Layout, I: ?Sized> PartialEq<I> for Span<U, S, L>
Source§impl<T, S: Shape, L: Layout, I: IntoExpression> RemAssign<I> for Span<T, S, L>
impl<T, S: Shape, L: Layout, I: IntoExpression> RemAssign<I> for Span<T, S, L>
Source§fn rem_assign(&mut self, rhs: I)
fn rem_assign(&mut self, rhs: I)
%= operation. Read moreSource§impl<T, S: Shape, L: Layout, I: IntoExpression> ShlAssign<I> for Span<T, S, L>
impl<T, S: Shape, L: Layout, I: IntoExpression> ShlAssign<I> for Span<T, S, L>
Source§fn shl_assign(&mut self, rhs: I)
fn shl_assign(&mut self, rhs: I)
<<= operation. Read moreSource§impl<T, S: Shape, L: Layout, I: IntoExpression> ShrAssign<I> for Span<T, S, L>
impl<T, S: Shape, L: Layout, I: IntoExpression> ShrAssign<I> for Span<T, S, L>
Source§fn shr_assign(&mut self, rhs: I)
fn shr_assign(&mut self, rhs: I)
>>= operation. Read moreSource§impl<T, S: Shape, L: Layout, I: IntoExpression> SubAssign<I> for Span<T, S, L>
impl<T, S: Shape, L: Layout, I: IntoExpression> SubAssign<I> for Span<T, S, L>
Source§fn sub_assign(&mut self, rhs: I)
fn sub_assign(&mut self, rhs: I)
-= operation. Read more