CopyMechanism

Trait CopyMechanism 

Source
pub trait CopyMechanism<ES: Numeric>:
    CubeType
    + Clone
    + Copy
    + Sync
    + Send
    + 'static {
    // Required methods
    fn memcpy_async(
        this: &Self,
        source: &Slice<Line<ES>>,
        destination: &mut SliceMut<Line<ES>>,
    );
    fn __expand_memcpy_async(
        context: &mut Scope,
        this: <Self as CubeType>::ExpandType,
        source: <Slice<Line<ES>> as CubeType>::ExpandType,
        destination: <SliceMut<Line<ES>> as CubeType>::ExpandType,
    ) -> <() as CubeType>::ExpandType;
}

Required Methods§

Source

fn memcpy_async( this: &Self, source: &Slice<Line<ES>>, destination: &mut SliceMut<Line<ES>>, )

Source

fn __expand_memcpy_async( context: &mut Scope, this: <Self as CubeType>::ExpandType, source: <Slice<Line<ES>> as CubeType>::ExpandType, destination: <SliceMut<Line<ES>> 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.

Implementations on Foreign Types§

Source§

impl<ES: Numeric> CopyMechanism<ES> for Barrier<ES>

Source§

fn memcpy_async( this: &Self, source: &Slice<Line<ES>>, destination: &mut SliceMut<Line<ES>>, )

Source§

fn __expand_memcpy_async( context: &mut Scope, this: <Self as CubeType>::ExpandType, source: <Slice<Line<ES>> as CubeType>::ExpandType, destination: <SliceMut<Line<ES>> as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Source§

impl<ES: Numeric> CopyMechanism<ES> for Pipeline<ES>

Source§

fn memcpy_async( this: &Self, source: &Slice<Line<ES>>, destination: &mut SliceMut<Line<ES>>, )

Source§

fn __expand_memcpy_async( context: &mut Scope, this: <Self as CubeType>::ExpandType, source: <Slice<Line<ES>> as CubeType>::ExpandType, destination: <SliceMut<Line<ES>> as CubeType>::ExpandType, ) -> <() as CubeType>::ExpandType

Implementors§