Skip to main content

AsViewExpand

Trait AsViewExpand 

Source
pub trait AsViewExpand<E: CubePrimitive> {
    type SourceCoords: Coordinates;

    // Required method
    fn __expand_view_method<C: Coordinates + 'static>(
        self,
        scope: &mut Scope,
        layout: VirtualLayoutExpand<C, Self::SourceCoords>,
    ) -> ViewExpand<E, C, ReadOnly>;
}

Required Associated Types§

Required Methods§

Source

fn __expand_view_method<C: Coordinates + 'static>( self, scope: &mut Scope, layout: VirtualLayoutExpand<C, Self::SourceCoords>, ) -> ViewExpand<E, C, ReadOnly>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<E: CubePrimitive> AsViewExpand<E> for NativeExpand<Array<E>>

Source§

type SourceCoords = usize

Source§

fn __expand_view_method<C: Coordinates + 'static>( self, scope: &mut Scope, layout: VirtualLayoutExpand<C, Coords1d>, ) -> ViewExpand<E, C, ReadOnly>

Source§

impl<E: CubePrimitive> AsViewExpand<E> for NativeExpand<SharedMemory<E>>

Source§

type SourceCoords = usize

Source§

fn __expand_view_method<C: Coordinates + 'static>( self, scope: &mut Scope, layout: VirtualLayoutExpand<C, Coords1d>, ) -> ViewExpand<E, C, ReadOnly>

Source§

impl<E: CubePrimitive> AsViewExpand<E> for NativeExpand<Tensor<E>>

Source§

type SourceCoords = usize

Source§

fn __expand_view_method<C: Coordinates + 'static>( self, scope: &mut Scope, layout: VirtualLayoutExpand<C, Coords1d>, ) -> ViewExpand<E, C, ReadOnly>

Source§

impl<E: CubePrimitive, IO: SliceVisibility + 'static> AsViewExpand<E> for SliceExpand<E, IO>

Source§

type SourceCoords = usize

Source§

fn __expand_view_method<C: Coordinates + 'static>( self, scope: &mut Scope, layout: VirtualLayoutExpand<C, Self::SourceCoords>, ) -> ViewExpand<E, C, ReadOnly>

Implementors§