pub trait Memory {
    type Item: Num;
    type Blas: Blas<Self::Item>;
    type ElmentWise: ElementWise<Self::Item>;

    // Required methods
    fn len(&self) -> usize;
    fn as_ptr(&self) -> *const Self::Item;
    fn as_ptr_offset(&self, offset: usize) -> *const Self::Item;
    fn value_offset(&self, offset: usize) -> Self::Item;
    fn get_offset(&self) -> usize;
    fn set_offset(&mut self, offset: usize);
}
Expand description

Matrixの要素を保持するメモリを表すトレイト

Required Associated Types§

Required Methods§

source

fn len(&self) -> usize

source

fn as_ptr(&self) -> *const Self::Item

確保しているメモリの先頭のポインタを返す offsetがある場合でもoffsetは考慮されない

source

fn as_ptr_offset(&self, offset: usize) -> *const Self::Item

source

fn value_offset(&self, offset: usize) -> Self::Item

source

fn get_offset(&self) -> usize

source

fn set_offset(&mut self, offset: usize)

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<'a, T: Num> Memory for ViewMem<'a, T>

§

type Item = T

§

type Blas = CpuBlas<T>

§

type ElmentWise = CpuElementWise<T>

source§

impl<'a, T: Num> Memory for ViewMutMem<'a, T>

§

type Item = T

§

type Blas = CpuBlas<T>

§

type ElmentWise = CpuElementWise<T>

source§

impl<T: Num> Memory for OwnedMem<T>

§

type Item = T

§

type Blas = CpuBlas<T>

§

type ElmentWise = CpuElementWise<T>