pub trait ViewOperationsMut<T: CubePrimitive, C: Coordinates>: ViewOperations<T, C> + CubeType<ExpandType: ViewOperationsMutExpand<T, C>> {
    // Provided methods
    fn write(&self, pos: C, value: T) { ... }
    fn write_checked(&self, pos: C, value: T) { ... }
    fn to_linear_slice_mut(&self, pos: C, size: C) -> Slice<T, ReadWrite> { ... }
    fn tensor_map_store(&self, shared_memory: &Slice<T>, pos: C) { ... }
    fn __expand_write(
        scope: &mut Scope,
        this: <Self as CubeType>::ExpandType,
        pos: <C as CubeType>::ExpandType,
        value: <T as CubeType>::ExpandType,
    ) -> <() as CubeType>::ExpandType { ... }
    fn __expand_write_checked(
        scope: &mut Scope,
        this: <Self as CubeType>::ExpandType,
        pos: <C as CubeType>::ExpandType,
        value: <T as CubeType>::ExpandType,
    ) -> <() as CubeType>::ExpandType { ... }
    fn __expand_to_linear_slice_mut(
        scope: &mut Scope,
        this: <Self as CubeType>::ExpandType,
        pos: <C as CubeType>::ExpandType,
        size: <C as CubeType>::ExpandType,
    ) -> <Slice<T, ReadWrite> as CubeType>::ExpandType { ... }
    fn __expand_tensor_map_store(
        scope: &mut Scope,
        this: <Self as CubeType>::ExpandType,
        shared_memory: <Slice<T> as CubeType>::ExpandType,
        pos: <C as CubeType>::ExpandType,
    ) -> <() as CubeType>::ExpandType { ... }
}Expand description
Type for which we can read and write values in cube functions. For an immutable version, see List.
Provided Methods§
fn write(&self, pos: C, value: T)
fn write_checked(&self, pos: C, value: T)
Sourcefn to_linear_slice_mut(&self, pos: C, size: C) -> Slice<T, ReadWrite>
 
fn to_linear_slice_mut(&self, pos: C, size: C) -> Slice<T, ReadWrite>
Create a mutable slice starting from pos, with size.
The layout handles translation into concrete indices.
Sourcefn tensor_map_store(&self, shared_memory: &Slice<T>, pos: C)
 
fn tensor_map_store(&self, shared_memory: &Slice<T>, pos: C)
.Execute a TMA store into global memory, if the underlying storage supports it. Panics if it’s unsupported.
fn __expand_write( scope: &mut Scope, this: <Self as CubeType>::ExpandType, pos: <C as CubeType>::ExpandType, value: <T as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType
fn __expand_write_checked( scope: &mut Scope, this: <Self as CubeType>::ExpandType, pos: <C as CubeType>::ExpandType, value: <T as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType
fn __expand_to_linear_slice_mut( scope: &mut Scope, this: <Self as CubeType>::ExpandType, pos: <C as CubeType>::ExpandType, size: <C as CubeType>::ExpandType, ) -> <Slice<T, ReadWrite> as CubeType>::ExpandType
fn __expand_tensor_map_store( scope: &mut Scope, this: <Self as CubeType>::ExpandType, shared_memory: <Slice<T> as CubeType>::ExpandType, pos: <C as CubeType>::ExpandType, ) -> <() 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.