pub trait TensorInterface:
Debug
+ Sized
+ Clone
+ PartialEq
+ Send
+ Sync {
Show 15 methods
// Required methods
fn datum_type(&self) -> Result<DatumType>;
fn from_bytes(dt: DatumType, shape: &[usize], data: &[u8]) -> Result<Self>;
fn as_bytes(&self) -> Result<(DatumType, &[usize], &[u8])>;
fn convert_to(&self, to: DatumType) -> Result<Self>;
// Provided methods
fn from_slice<T: Datum>(shape: &[usize], data: &[T]) -> Result<Self> { ... }
fn as_slice<T: Datum>(&self) -> Result<&[T]> { ... }
fn as_shape_and_slice<T: Datum>(&self) -> Result<(&[usize], &[T])> { ... }
fn shape(&self) -> Result<&[usize]> { ... }
fn view<T: Datum>(&self) -> Result<ArrayViewD<'_, T>> { ... }
fn view1<T: Datum>(&self) -> Result<ArrayView1<'_, T>> { ... }
fn view2<T: Datum>(&self) -> Result<ArrayView2<'_, T>> { ... }
fn view3<T: Datum>(&self) -> Result<ArrayView3<'_, T>> { ... }
fn view4<T: Datum>(&self) -> Result<ArrayView4<'_, T>> { ... }
fn view5<T: Datum>(&self) -> Result<ArrayView5<'_, T>> { ... }
fn view6<T: Datum>(&self) -> Result<ArrayView6<'_, T>> { ... }
}Required Methods§
fn datum_type(&self) -> Result<DatumType>
fn from_bytes(dt: DatumType, shape: &[usize], data: &[u8]) -> Result<Self>
fn as_bytes(&self) -> Result<(DatumType, &[usize], &[u8])>
fn convert_to(&self, to: DatumType) -> Result<Self>
Provided Methods§
fn from_slice<T: Datum>(shape: &[usize], data: &[T]) -> Result<Self>
fn as_slice<T: Datum>(&self) -> Result<&[T]>
fn as_shape_and_slice<T: Datum>(&self) -> Result<(&[usize], &[T])>
fn shape(&self) -> Result<&[usize]>
fn view<T: Datum>(&self) -> Result<ArrayViewD<'_, T>>
fn view1<T: Datum>(&self) -> Result<ArrayView1<'_, T>>
fn view2<T: Datum>(&self) -> Result<ArrayView2<'_, T>>
fn view3<T: Datum>(&self) -> Result<ArrayView3<'_, T>>
fn view4<T: Datum>(&self) -> Result<ArrayView4<'_, T>>
fn view5<T: Datum>(&self) -> Result<ArrayView5<'_, T>>
fn view6<T: Datum>(&self) -> Result<ArrayView6<'_, T>>
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.