pub struct SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,{ /* private fields */ }Implementations§
Source§impl<E, IO> SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
pub fn __to_raw_parts(&self) -> (Variable, Variable)
Source§impl<E, N, IO> SliceExpand<Vector<E, N>, IO>
impl<E, N, IO> SliceExpand<Vector<E, N>, IO>
pub fn __expand_with_vector_size_method<N2>(
self,
scope: &mut Scope,
) -> <Slice<Vector<E, N2>, IO> as CubeType>::ExpandType ⓘwhere
N2: Size,
pub fn __expand_with_vector_size<N2>(
scope: &mut Scope,
this: SliceExpand<Vector<E, N>, IO>,
) -> <Slice<Vector<E, N2>, IO> as CubeType>::ExpandType ⓘwhere
N2: Size,
Source§impl<E, IO> SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
pub fn __expand_into_vectorized_method( self, scope: &mut Scope, ) -> <Slice<Vector<<E as CubePrimitive>::Scalar, <E as CubePrimitive>::Size>, IO> as CubeType>::ExpandType ⓘ
pub fn __expand_downcast_method<T>(
self,
scope: &mut Scope,
) -> <Slice<T, IO> as CubeType>::ExpandType ⓘwhere
T: CubePrimitive,
pub fn __expand_downcast_unchecked_method<T>(
self,
scope: &mut Scope,
) -> <Slice<T, IO> as CubeType>::ExpandType ⓘwhere
T: CubePrimitive,
pub fn __expand_into_vectorized( scope: &mut Scope, this: SliceExpand<E, IO>, ) -> <Slice<Vector<<E as CubePrimitive>::Scalar, <E as CubePrimitive>::Size>, IO> as CubeType>::ExpandType ⓘ
pub fn __expand_downcast<T>(
scope: &mut Scope,
this: SliceExpand<E, IO>,
) -> <Slice<T, IO> as CubeType>::ExpandType ⓘwhere
T: CubePrimitive,
pub fn __expand_downcast_unchecked<T>(
scope: &mut Scope,
this: SliceExpand<E, IO>,
) -> <Slice<T, IO> as CubeType>::ExpandType ⓘwhere
T: CubePrimitive,
Source§impl<E> SliceExpand<E, ReadOnly>where
E: CubePrimitive,
impl<E> SliceExpand<E, ReadOnly>where
E: CubePrimitive,
pub fn __expand_as_mut_unchecked_method( self, scope: &mut Scope, ) -> <Slice<E, ReadWrite> as CubeType>::ExpandType ⓘ
pub fn __expand_as_mut_unchecked( scope: &mut Scope, this: SliceExpand<E, ReadOnly>, ) -> <Slice<E, ReadWrite> as CubeType>::ExpandType ⓘ
Source§impl<E, IO> SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
pub fn __expand_len_method( self, scope: &mut Scope, ) -> <usize as CubeType>::ExpandType
pub fn __expand_is_empty_method( self, scope: &mut Scope, ) -> <bool as CubeType>::ExpandType
pub fn __expand_len( scope: &mut Scope, this: SliceExpand<E, IO>, ) -> <usize as CubeType>::ExpandType
pub fn __expand_is_empty( scope: &mut Scope, this: SliceExpand<E, IO>, ) -> <bool as CubeType>::ExpandType
Trait Implementations§
Source§impl<E, IO> AsViewExpand<E> for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility + 'static,
impl<E, IO> AsViewExpand<E> for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility + 'static,
type SourceCoords = usize
fn __expand_view_method<C>(
self,
scope: &mut Scope,
layout: VirtualLayoutExpand<C, <SliceExpand<E, IO> as AsViewExpand<E>>::SourceCoords>,
) -> ViewExpand<E, C>where
C: Coordinates + 'static,
Source§impl<E> AsViewMutExpand<E> for SliceExpand<E, ReadWrite>where
E: CubePrimitive,
impl<E> AsViewMutExpand<E> for SliceExpand<E, ReadWrite>where
E: CubePrimitive,
fn __expand_view_mut_method<C>(
self,
scope: &mut Scope,
layout: VirtualLayoutExpand<C, <SliceExpand<E, ReadWrite> as AsViewExpand<E>>::SourceCoords>,
) -> ViewExpand<E, C, ReadWrite>where
C: Coordinates + 'static,
Source§impl<E, IO> Clone for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> Clone for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
Source§fn clone(&self) -> SliceExpand<E, IO>
fn clone(&self) -> SliceExpand<E, IO>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<E, IO> CubeDebug for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> CubeDebug for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
Source§fn set_debug_name(&self, scope: &mut Scope, name: &'static str)
fn set_debug_name(&self, scope: &mut 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<E, IO> CubeIndexExpand for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> CubeIndexExpand for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
type Output = <E as CubeType>::ExpandType
type Idx = NativeExpand<usize>
fn expand_index( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> <SliceExpand<E, IO> as CubeIndexExpand>::Output
fn expand_index_unchecked( self, scope: &mut Scope, index: NativeExpand<usize>, ) -> <SliceExpand<E, IO> as CubeIndexExpand>::Output
Source§impl<E> CubeIndexMutExpand for SliceExpand<E, ReadWrite>where
E: CubePrimitive,
impl<E> CubeIndexMutExpand for SliceExpand<E, ReadWrite>where
E: CubePrimitive,
fn expand_index_mut( self, scope: &mut Scope, index: NativeExpand<usize>, value: <SliceExpand<E, ReadWrite> as CubeIndexExpand>::Output, )
Source§impl<E, IO> IntoMut for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> IntoMut for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
Source§fn into_mut(self, _scope: &mut Scope) -> SliceExpand<E, IO>
fn into_mut(self, _scope: &mut Scope) -> SliceExpand<E, IO>
Convert the variable into a potentially new mutable variable in
scope, copying if needed.Source§impl<E> Iterable<E> for SliceExpand<E, ReadOnly>where
E: CubePrimitive,
impl<E> Iterable<E> for SliceExpand<E, ReadOnly>where
E: CubePrimitive,
Source§fn expand(
self,
scope: &mut Scope,
body: impl FnMut(&mut Scope, <E as CubeType>::ExpandType),
)
fn expand( self, scope: &mut Scope, body: impl FnMut(&mut Scope, <E as CubeType>::ExpandType), )
Expand a runtime loop without unrolling Read more
Source§fn expand_unroll(
self,
_scope: &mut Scope,
_body: impl FnMut(&mut Scope, <E as CubeType>::ExpandType),
)
fn expand_unroll( self, _scope: &mut Scope, _body: impl FnMut(&mut Scope, <E as CubeType>::ExpandType), )
Expand an unrolled loop. The body should be invoced
n times, where n is the number of
iterations. Read moreSource§impl<E, IO> ListExpand<E> for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> ListExpand<E> for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
fn __expand_read_method( &self, scope: &mut Scope, index: NativeExpand<usize>, ) -> <E as CubeType>::ExpandType
fn __expand_read_unchecked_method( &self, scope: &mut Scope, index: NativeExpand<usize>, ) -> <E as CubeType>::ExpandType
fn __expand_len_method(&self, scope: &mut Scope) -> NativeExpand<usize>
Source§impl<E> ListMutExpand<E> for SliceExpand<E, ReadWrite>where
E: CubePrimitive,
impl<E> ListMutExpand<E> for SliceExpand<E, ReadWrite>where
E: CubePrimitive,
fn __expand_write_method( &self, scope: &mut Scope, index: NativeExpand<usize>, value: NativeExpand<E>, )
Source§impl<E> SliceMutOperatorExpand<E> for SliceExpand<E, ReadWrite>where
E: CubePrimitive,
impl<E> SliceMutOperatorExpand<E> for SliceExpand<E, ReadWrite>where
E: CubePrimitive,
fn __expand_slice_mut_method( &self, scope: &mut Scope, start: NativeExpand<usize>, end: NativeExpand<usize>, ) -> SliceExpand<E, ReadWrite>
fn __expand_to_slice_mut_method( &self, _scope: &mut Scope, ) -> SliceExpand<E, ReadWrite>
Source§impl<E, IO> SliceOperatorExpand<E> for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> SliceOperatorExpand<E> for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
fn __expand_slice_method( &self, scope: &mut Scope, start: NativeExpand<usize>, end: NativeExpand<usize>, ) -> SliceExpand<E, ReadOnly>
fn __expand_to_slice_method( &self, _scope: &mut Scope, ) -> SliceExpand<E, ReadOnly>
Source§impl<E, IO> VectorizedExpand for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
impl<E, IO> VectorizedExpand for SliceExpand<E, IO>where
E: CubePrimitive,
IO: SliceVisibility,
fn vector_size(&self) -> usize
fn __expand_vector_size_method(&self, _scope: &mut Scope) -> usize
Source§impl<T, IO> ViewOperationsExpand<T, usize> for SliceExpand<T, IO>where
T: CubePrimitive,
IO: SliceVisibility,
impl<T, IO> ViewOperationsExpand<T, usize> for SliceExpand<T, IO>where
T: CubePrimitive,
IO: SliceVisibility,
fn __expand_read_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, ) -> <T as CubeType>::ExpandType
fn __expand_read_checked_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, ) -> <T as CubeType>::ExpandType
fn __expand_read_masked_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, mask_value: <T as CubeType>::ExpandType, ) -> <T as CubeType>::ExpandType
fn __expand_read_unchecked_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, ) -> <T as CubeType>::ExpandType
fn __expand_to_linear_slice_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, end: NativeExpand<usize>, ) -> SliceExpand<T, ReadOnly>
fn __expand_shape_method(&self, scope: &mut Scope) -> NativeExpand<usize>
fn __expand_is_in_bounds_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, ) -> NativeExpand<bool>
fn __expand_tensor_map_load_method( &self, _scope: &mut Scope, _barrier: NativeExpand<Barrier>, _shared_memory: SliceExpand<T, ReadWrite>, _pos: NativeExpand<usize>, )
Source§impl<T> ViewOperationsMutExpand<T, usize> for SliceExpand<T, ReadWrite>where
T: CubePrimitive,
impl<T> ViewOperationsMutExpand<T, usize> for SliceExpand<T, ReadWrite>where
T: CubePrimitive,
fn __expand_write_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, value: <T as CubeType>::ExpandType, )
fn __expand_write_checked_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, value: <T as CubeType>::ExpandType, )
fn __expand_to_linear_slice_mut_method( &self, scope: &mut Scope, pos: NativeExpand<usize>, end: NativeExpand<usize>, ) -> SliceExpand<T, ReadWrite>
fn __expand_tensor_map_store_method( &self, _scope: &mut Scope, _shared_memory: SliceExpand<T, ReadOnly>, _pos: <usize as CubeType>::ExpandType, )
Auto Trait Implementations§
impl<E, IO> Freeze for SliceExpand<E, IO>
impl<E, IO> RefUnwindSafe for SliceExpand<E, IO>where
IO: RefUnwindSafe,
E: RefUnwindSafe,
impl<E, IO> !Send for SliceExpand<E, IO>
impl<E, IO> !Sync for SliceExpand<E, IO>
impl<E, IO> Unpin for SliceExpand<E, IO>
impl<E, IO> UnsafeUnpin for SliceExpand<E, IO>
impl<E, IO> UnwindSafe for SliceExpand<E, IO>where
IO: UnwindSafe,
E: 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