pub struct OutLayoutExpand {
pub shape_out: <Sequence<FastDivmod<u32>> as CubeType>::ExpandType,
pub rows: <u32 as CubeType>::ExpandType,
pub cols: <u32 as CubeType>::ExpandType,
pub config: GlobalLayoutConfig,
}Fields§
§shape_out: <Sequence<FastDivmod<u32>> as CubeType>::ExpandType§rows: <u32 as CubeType>::ExpandType§cols: <u32 as CubeType>::ExpandType§config: GlobalLayoutConfigTrait Implementations§
Source§impl AsMutExpand for OutLayoutExpand
impl AsMutExpand for OutLayoutExpand
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 OutLayoutExpand
impl AsRefExpand for OutLayoutExpand
fn __expand_ref_method(&self, _: &Scope) -> &Self
fn __expand_as_ref_method(&self, scope: &Scope) -> &T
Source§impl CubeDebug for OutLayoutExpand
impl CubeDebug for OutLayoutExpand
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 ExpandTypeClone for OutLayoutExpand
impl ExpandTypeClone for OutLayoutExpand
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 OutLayoutExpand
impl IntoExpand for OutLayoutExpand
type Expand = OutLayoutExpand
fn into_expand(self, _: &Scope) -> Self
Source§impl IntoMut for OutLayoutExpand
impl IntoMut for OutLayoutExpand
Source§impl LayoutExpand for OutLayoutExpand
impl LayoutExpand for OutLayoutExpand
Source§type Coordinates = (usize, u32, u32)
type Coordinates = (usize, u32, u32)
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 = NhwcCoords
type SourceCoordinates = NhwcCoords
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, coords: <Self::Coordinates as CubeType>::ExpandType, ) -> <NhwcCoords as CubeType>::ExpandType
fn __expand_to_source_pos_checked_method( &self, scope: &Scope, coords: <Self::Coordinates as CubeType>::ExpandType, ) -> (<NhwcCoords 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 OutLayoutExpand
impl RefUnwindSafe for OutLayoutExpand
impl Send for OutLayoutExpand
impl Sync for OutLayoutExpand
impl Unpin for OutLayoutExpand
impl UnsafeUnpin for OutLayoutExpand
impl UnwindSafe for OutLayoutExpand
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