pub trait TilingLayout:
'static
+ Send
+ Sync
+ Clone
+ Copy {
// Required methods
fn get_tile<ES: Numeric, S: StageConfig>(
stage: &StageMemory<ES, Self>,
row: u32,
col: u32,
buffer_index: u32,
ident: Ident,
config: S,
) -> Tile<ES>;
fn __expand_get_tile<ES: Numeric, S: StageConfig>(
scope: &mut Scope,
stage: <StageMemory<ES, Self> as CubeType>::ExpandType,
row: <u32 as CubeType>::ExpandType,
col: <u32 as CubeType>::ExpandType,
buffer_index: u32,
ident: Ident,
config: S,
) -> <Tile<ES> as CubeType>::ExpandType;
}
Expand description
Describes how tiles are arranged in shared memory.
Required Methods§
Sourcefn get_tile<ES: Numeric, S: StageConfig>(
stage: &StageMemory<ES, Self>,
row: u32,
col: u32,
buffer_index: u32,
ident: Ident,
config: S,
) -> Tile<ES>
fn get_tile<ES: Numeric, S: StageConfig>( stage: &StageMemory<ES, Self>, row: u32, col: u32, buffer_index: u32, ident: Ident, config: S, ) -> Tile<ES>
Returns the tile at shared memory coordinates
fn __expand_get_tile<ES: Numeric, S: StageConfig>( scope: &mut Scope, stage: <StageMemory<ES, Self> as CubeType>::ExpandType, row: <u32 as CubeType>::ExpandType, col: <u32 as CubeType>::ExpandType, buffer_index: u32, ident: Ident, config: S, ) -> <Tile<ES> as CubeType>::ExpandType
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.