pub struct RangeInclusiveExpand<Idx: Scalar> { /* private fields */ }Implementations§
Source§impl<Idx: Scalar> RangeInclusiveExpand<Idx>
impl<Idx: Scalar> RangeInclusiveExpand<Idx>
pub fn new(start: NativeExpand<Idx>, last: NativeExpand<Idx>) -> Self
Source§impl<I: Int> RangeInclusiveExpand<I>
impl<I: Int> RangeInclusiveExpand<I>
pub fn __expand_step_by_method( self, _: &Scope, n: impl Into<NativeExpand<I>>, ) -> SteppedRangeExpand<I>
Trait Implementations§
Source§impl<Idx: Scalar> AsMutExpand for RangeInclusiveExpand<Idx>
impl<Idx: Scalar> AsMutExpand for RangeInclusiveExpand<Idx>
fn __expand_ref_mut_method(&mut self, _: &Scope) -> &mut Self
fn __expand_as_mut_method(&mut self, scope: &Scope) -> &mut T
Source§impl<Idx: Scalar> AsRefExpand for RangeInclusiveExpand<Idx>
impl<Idx: Scalar> AsRefExpand for RangeInclusiveExpand<Idx>
fn __expand_ref_method(&self, _: &Scope) -> &Self
fn __expand_as_ref_method(&self, scope: &Scope) -> &T
Source§impl<Idx: Scalar> CubeDebug for RangeInclusiveExpand<Idx>
impl<Idx: Scalar> CubeDebug for RangeInclusiveExpand<Idx>
Source§fn set_debug_name(&self, scope: &Scope, name: &'static str)
fn set_debug_name(&self, scope: &Scope, name: &'static str)
Set the debug name of this type’s expansion. Should do nothing for types that don’t appear
at runtime
Source§impl<Idx: Scalar> ExpandTypeClone for RangeInclusiveExpand<Idx>
impl<Idx: Scalar> ExpandTypeClone for RangeInclusiveExpand<Idx>
Source§fn clone_unchecked(&self) -> Self
fn clone_unchecked(&self) -> Self
Unchecked clone that only clones the conceptual runtime value. Should only be used in cases
where each copy is used in a mutually exclusive branch (i.e. match, runtime enums). This is
intentionally separated from Rust’s
Clone semantics and should only be used for the
conceptual expand values, never real data. Using two values in the same branch is undefined
behaviour.Source§impl<E: CubePrimitive> IndexExpand<RangeInclusiveExpand<usize>> for SliceExpand<E>
impl<E: CubePrimitive> IndexExpand<RangeInclusiveExpand<usize>> for SliceExpand<E>
type Output = NativeExpand<[E]>
fn __expand_index_method( &self, scope: &Scope, index: RangeInclusiveExpand<usize>, ) -> &Self::Output
Source§impl<E: CubePrimitive> IndexExpand<RangeInclusiveExpand<usize>> for NativeExpand<Array<E>>
impl<E: CubePrimitive> IndexExpand<RangeInclusiveExpand<usize>> for NativeExpand<Array<E>>
type Output = NativeExpand<[E]>
fn __expand_index_method( &self, scope: &Scope, index: RangeInclusiveExpand<usize>, ) -> &Self::Output
Source§impl<E: CubePrimitive> IndexExpand<RangeInclusiveExpand<usize>> for TensorExpand<E>
impl<E: CubePrimitive> IndexExpand<RangeInclusiveExpand<usize>> for TensorExpand<E>
type Output = NativeExpand<[E]>
fn __expand_index_method( &self, scope: &Scope, index: RangeInclusiveExpand<usize>, ) -> &Self::Output
type Output = NativeExpand<[E]>
fn __expand_index_method( &self, scope: &Scope, index: RangeInclusiveExpand<usize>, ) -> &Self::Output
Source§impl<E: CubePrimitive> IndexMutExpand<RangeInclusiveExpand<usize>> for SliceExpand<E>
impl<E: CubePrimitive> IndexMutExpand<RangeInclusiveExpand<usize>> for SliceExpand<E>
fn __expand_index_mut_method( &mut self, scope: &Scope, index: RangeInclusiveExpand<usize>, ) -> &mut <Self as IndexExpand<RangeInclusiveExpand<usize>>>::Output
Source§impl<E: CubePrimitive> IndexMutExpand<RangeInclusiveExpand<usize>> for NativeExpand<Array<E>>
impl<E: CubePrimitive> IndexMutExpand<RangeInclusiveExpand<usize>> for NativeExpand<Array<E>>
fn __expand_index_mut_method( &mut self, scope: &Scope, index: RangeInclusiveExpand<usize>, ) -> &mut <Self as IndexExpand<RangeInclusiveExpand<usize>>>::Output
Source§impl<E: CubePrimitive> IndexMutExpand<RangeInclusiveExpand<usize>> for TensorExpand<E>
impl<E: CubePrimitive> IndexMutExpand<RangeInclusiveExpand<usize>> for TensorExpand<E>
fn __expand_index_mut_method( &mut self, scope: &Scope, index: RangeInclusiveExpand<usize>, ) -> &mut <Self as IndexExpand<RangeInclusiveExpand<usize>>>::Output
fn __expand_index_mut_method( &mut self, scope: &Scope, index: RangeInclusiveExpand<usize>, ) -> &mut <Self as IndexExpand<RangeInclusiveExpand<usize>>>::Output
Source§impl<Idx: Scalar> IntoExpand for RangeInclusiveExpand<Idx>
impl<Idx: Scalar> IntoExpand for RangeInclusiveExpand<Idx>
type Expand = RangeInclusiveExpand<Idx>
fn into_expand(self, _: &Scope) -> Self
Source§impl<Idx: Scalar> IntoMut for RangeInclusiveExpand<Idx>
impl<Idx: Scalar> IntoMut for RangeInclusiveExpand<Idx>
Source§impl<I: Int> Iterable for RangeInclusiveExpand<I>
impl<I: Int> Iterable for RangeInclusiveExpand<I>
type Item = NativeExpand<I>
Source§fn expand_unroll(
self,
scope: &Scope,
body: impl FnMut(&Scope, <I as CubeType>::ExpandType),
)
fn expand_unroll( self, scope: &Scope, body: impl FnMut(&Scope, <I as CubeType>::ExpandType), )
Expand an unrolled loop. The body should be invoced
n times, where n is the number of
iterations. Read moreAuto Trait Implementations§
impl<Idx> Freeze for RangeInclusiveExpand<Idx>
impl<Idx> RefUnwindSafe for RangeInclusiveExpand<Idx>where
Idx: RefUnwindSafe,
impl<Idx> Send for RangeInclusiveExpand<Idx>
impl<Idx> Sync for RangeInclusiveExpand<Idx>
impl<Idx> Unpin for RangeInclusiveExpand<Idx>where
Idx: Unpin,
impl<Idx> UnsafeUnpin for RangeInclusiveExpand<Idx>
impl<Idx> UnwindSafe for RangeInclusiveExpand<Idx>where
Idx: UnwindSafe,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more