Trait cubecl_core::frontend::SliceOperatorExpand

source ·
pub trait SliceOperatorExpand<E: CubeType>: Into<ExpandElement> + Clone {
    // Required method
    fn slice_base<Start: Index, End: Index>(
        &self,
        context: &mut CubeContext,
        start: Start,
        end: End,
    ) -> ExpandElement;

    // Provided methods
    fn __expand_slice_method<Start: Index, End: Index>(
        &self,
        context: &mut CubeContext,
        start: Start,
        end: End,
    ) -> ExpandElementTyped<Slice<'static, E>> { ... }
    fn __expand_slice_mut_method<Start: Index, End: Index>(
        &self,
        context: &mut CubeContext,
        start: Start,
        end: End,
    ) -> ExpandElementTyped<SliceMut<'static, E>> { ... }
    fn __expand_slice_mut_unsafe_method<Start: Index, End: Index>(
        &self,
        context: &mut CubeContext,
        start: Start,
        end: End,
    ) -> ExpandElementTyped<SliceMut<'static, E>> { ... }
    fn __expand_as_slice_method(
        &self,
        _context: &mut CubeContext,
    ) -> ExpandElementTyped<Slice<'static, E>> { ... }
    fn __expand_as_slice_mut_unsafe_method(
        &self,
        context: &mut CubeContext,
    ) -> ExpandElementTyped<SliceMut<'static, E>> { ... }
    fn __expand_as_slice_mut_method(
        &self,
        _context: &mut CubeContext,
    ) -> ExpandElementTyped<SliceMut<'static, E>> { ... }
}

Required Methods§

source

fn slice_base<Start: Index, End: Index>( &self, context: &mut CubeContext, start: Start, end: End, ) -> ExpandElement

Provided Methods§

source

fn __expand_slice_method<Start: Index, End: Index>( &self, context: &mut CubeContext, start: Start, end: End, ) -> ExpandElementTyped<Slice<'static, E>>

source

fn __expand_slice_mut_method<Start: Index, End: Index>( &self, context: &mut CubeContext, start: Start, end: End, ) -> ExpandElementTyped<SliceMut<'static, E>>

source

fn __expand_slice_mut_unsafe_method<Start: Index, End: Index>( &self, context: &mut CubeContext, start: Start, end: End, ) -> ExpandElementTyped<SliceMut<'static, E>>

source

fn __expand_as_slice_method( &self, _context: &mut CubeContext, ) -> ExpandElementTyped<Slice<'static, E>>

source

fn __expand_as_slice_mut_unsafe_method( &self, context: &mut CubeContext, ) -> ExpandElementTyped<SliceMut<'static, E>>

source

fn __expand_as_slice_mut_method( &self, _context: &mut CubeContext, ) -> ExpandElementTyped<SliceMut<'static, E>>

Object Safety§

This trait is not object safe.

Implementors§