pub enum LinearViewLayoutExpand {
Plain(<PlainLayout as CubeType>::ExpandType),
Strided(<StridedLayout as CubeType>::ExpandType),
Permuted(<PermutedLayout as CubeType>::ExpandType),
}Variants§
Plain(<PlainLayout as CubeType>::ExpandType)
Strided(<StridedLayout as CubeType>::ExpandType)
Permuted(<PermutedLayout as CubeType>::ExpandType)
Trait Implementations§
Source§impl AsMutExpand for LinearViewLayoutExpand
impl AsMutExpand for LinearViewLayoutExpand
fn __expand_ref_mut_method(&mut self, _: &Scope) -> &mut Self
fn __expand_as_mut_method(&mut self, scope: &Scope) -> &mut T
Source§impl AsRefExpand for LinearViewLayoutExpand
impl AsRefExpand for LinearViewLayoutExpand
fn __expand_ref_method(&self, _: &Scope) -> &Self
fn __expand_as_ref_method(&self, scope: &Scope) -> &T
Source§impl CubeDebug for LinearViewLayoutExpand
impl CubeDebug for LinearViewLayoutExpand
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 CubeEnum for LinearViewLayoutExpand
impl CubeEnum for LinearViewLayoutExpand
type RuntimeValue = ()
fn discriminant(&self) -> NativeExpand<i32>
Source§fn runtime_value(self) -> Self::RuntimeValue
fn runtime_value(self) -> Self::RuntimeValue
Return the runtime value of this enum, if only one variant has a value.
Should return () for all other cases.
fn discriminant_of(variant_name: &'static str) -> i32
fn discriminant_of_value(&self, variant_name: &'static str) -> i32
Source§impl ExpandTypeClone for LinearViewLayoutExpand
impl ExpandTypeClone for LinearViewLayoutExpand
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 IntoExpand for LinearViewLayoutExpand
impl IntoExpand for LinearViewLayoutExpand
type Expand = LinearViewLayoutExpand
fn into_expand(self, _: &Scope) -> Self
Source§impl IntoMut for LinearViewLayoutExpand
impl IntoMut for LinearViewLayoutExpand
Source§impl LayoutExpand for LinearViewLayoutExpand
impl LayoutExpand for LinearViewLayoutExpand
Source§type Coordinates = usize
type Coordinates = usize
The coordinate type used by the conceptual tensor represented by this layout, i.e.
(u32, u32, u32) for a fixed-rank 3D tensor.
This does not have to match the rank of the underlying storage (if applicable).
It’s only how the tensor is interpreted (viewed) by the code.Source§type SourceCoordinates = usize
type SourceCoordinates = usize
The coordinate type used by the inner storage wrapped in this layout, i.e.
u32 for
Array, or (u32, u32) for a 2D view.fn __expand_to_source_pos_method( &self, scope: &Scope, pos: <Self::Coordinates as CubeType>::ExpandType, ) -> <usize as CubeType>::ExpandType
fn __expand_to_source_pos_checked_method( &self, scope: &Scope, pos: <Self::Coordinates as CubeType>::ExpandType, ) -> (<usize as CubeType>::ExpandType, <bool as CubeType>::ExpandType)
fn __expand_shape_method( &self, scope: &Scope, ) -> <Self::Coordinates as CubeType>::ExpandType
fn __expand_is_in_bounds_method( &self, scope: &Scope, pos: <Self::Coordinates as CubeType>::ExpandType, ) -> <bool as CubeType>::ExpandType
Auto Trait Implementations§
impl Freeze for LinearViewLayoutExpand
impl RefUnwindSafe for LinearViewLayoutExpand
impl Send for LinearViewLayoutExpand
impl Sync for LinearViewLayoutExpand
impl Unpin for LinearViewLayoutExpand
impl UnsafeUnpin for LinearViewLayoutExpand
impl UnwindSafe for LinearViewLayoutExpand
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