Skip to main content

AsView

Trait AsView 

Source
pub trait AsView<E: CubePrimitive>: CubeType<ExpandType: AsViewExpand<E, SourceCoords = Self::SourceCoords>> {
    type SourceCoords: Coordinates;

    // Provided methods
    fn view<C: Coordinates + 'static>(
        &self,
        layout: impl Into<VirtualLayout<C, Self::SourceCoords>>,
    ) -> View<E, C, ReadOnly> { ... }
    fn __expand_view<C: Coordinates + 'static>(
        scope: &mut Scope,
        this: Self::ExpandType,
        layout: VirtualLayoutExpand<C, Self::SourceCoords>,
    ) -> ViewExpand<E, C, ReadOnly> { ... }
}

Required Associated Types§

Provided Methods§

Source

fn view<C: Coordinates + 'static>( &self, layout: impl Into<VirtualLayout<C, Self::SourceCoords>>, ) -> View<E, C, ReadOnly>

Source

fn __expand_view<C: Coordinates + 'static>( scope: &mut Scope, this: Self::ExpandType, 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> AsView<E> for Array<E>

Source§

impl<E: CubePrimitive> AsView<E> for SharedMemory<E>

Source§

impl<E: CubePrimitive> AsView<E> for Tensor<E>

Source§

impl<E: CubePrimitive, IO: SliceVisibility + 'static> AsView<E> for Slice<E, IO>

Source§

type SourceCoords = usize

Source§

fn view<C: Coordinates + 'static>( &self, layout: impl Into<VirtualLayout<C, Coords1d>>, ) -> View<E, C, ReadOnly>

Implementors§