DeviceChangeAPI

Trait DeviceChangeAPI 

Source
pub trait DeviceChangeAPI<'l, BOut, R, T, D>: DeviceRawAPI<T>
where BOut: DeviceRawAPI<T>, D: DimAPI, R: DataAPI<Data = Self::Raw>,
{ type Repr: DataAPI<Data = <BOut as DeviceRawAPI<T>>::Raw>; type ReprTo: DataAPI<Data = <BOut as DeviceRawAPI<T>>::Raw>; // Required methods fn change_device( tensor: TensorBase<Storage<R, T, Self>, D>, device: &BOut, ) -> Result<TensorBase<Storage<Self::Repr, T, BOut>, D>, Error>; fn into_device( tensor: TensorBase<Storage<R, T, Self>, D>, device: &BOut, ) -> Result<TensorBase<Storage<DataOwned<<BOut as DeviceRawAPI<T>>::Raw>, T, BOut>, D>, Error>; fn to_device( tensor: &'l TensorBase<Storage<R, T, Self>, D>, device: &BOut, ) -> Result<TensorBase<Storage<Self::ReprTo, T, BOut>, D>, Error>; }

Required Associated Types§

Source

type Repr: DataAPI<Data = <BOut as DeviceRawAPI<T>>::Raw>

Source

type ReprTo: DataAPI<Data = <BOut as DeviceRawAPI<T>>::Raw>

Required Methods§

Source

fn change_device( tensor: TensorBase<Storage<R, T, Self>, D>, device: &BOut, ) -> Result<TensorBase<Storage<Self::Repr, T, BOut>, D>, Error>

Source

fn into_device( tensor: TensorBase<Storage<R, T, Self>, D>, device: &BOut, ) -> Result<TensorBase<Storage<DataOwned<<BOut as DeviceRawAPI<T>>::Raw>, T, BOut>, D>, Error>

Source

fn to_device( tensor: &'l TensorBase<Storage<R, T, Self>, D>, device: &BOut, ) -> Result<TensorBase<Storage<Self::ReprTo, T, BOut>, D>, Error>

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.

Implementors§

Source§

impl<'a, R, T, D> DeviceChangeAPI<'a, DeviceOpenBLAS, R, T, D> for DeviceOpenBLAS
where T: Clone + Send + Sync + 'a, D: DimAPI, R: DataCloneAPI<Data = Vec<T>>,

Source§

type Repr = R

Source§

type ReprTo = DataRef<'a, Vec<T>>

Source§

impl<'a, R, T, D> DeviceChangeAPI<'a, DeviceOpenBLAS, R, T, D> for DeviceCpuSerial
where T: Clone + Send + Sync + 'a, D: DimAPI, R: DataCloneAPI<Data = Vec<T>>,

Source§

type Repr = R

Source§

type ReprTo = DataRef<'a, Vec<T>>

Source§

impl<'a, R, T, D> DeviceChangeAPI<'a, DeviceCpuSerial, R, T, D> for DeviceOpenBLAS
where T: Clone + Send + Sync + 'a, D: DimAPI, R: DataCloneAPI<Data = Vec<T>>,

Source§

type Repr = R

Source§

type ReprTo = DataRef<'a, Vec<T>>

Source§

impl<'a, R, T, D> DeviceChangeAPI<'a, DeviceCpuSerial, R, T, D> for DeviceCpuSerial
where T: Clone + Send + Sync + 'a, D: DimAPI, R: DataCloneAPI<Data = Vec<T>>,

Source§

type Repr = R

Source§

type ReprTo = DataRef<'a, Vec<T>>