pub enum StorageKind {
Dense,
Diagonal,
Structured,
}Expand description
Classifies the compact layout used by Storage.
Use this to distinguish dense logical payloads from diagonal/copy payloads and general structured payloads without exposing the internal storage enum.
§Examples
use tensor4all_tensorbackend::{Storage, StorageKind};
let dense = Storage::from_dense_col_major(vec![1.0_f64, 2.0], &[2]).unwrap();
assert_eq!(dense.storage_kind(), StorageKind::Dense);
let diag = Storage::from_diag_col_major(vec![1.0_f64, 2.0], 2).unwrap();
assert_eq!(diag.storage_kind(), StorageKind::Diagonal);Variants§
Dense
Logical dense payload layout.
Diagonal
Diagonal or copy-tensor payload layout.
Structured
General structured payload layout with repeated axis classes.
Trait Implementations§
Source§impl Clone for StorageKind
impl Clone for StorageKind
Source§fn clone(&self) -> StorageKind
fn clone(&self) -> StorageKind
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for StorageKind
Source§impl Debug for StorageKind
impl Debug for StorageKind
impl Eq for StorageKind
Source§impl PartialEq for StorageKind
impl PartialEq for StorageKind
Source§fn eq(&self, other: &StorageKind) -> bool
fn eq(&self, other: &StorageKind) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for StorageKind
Auto Trait Implementations§
impl Freeze for StorageKind
impl RefUnwindSafe for StorageKind
impl Send for StorageKind
impl Sync for StorageKind
impl Unpin for StorageKind
impl UnsafeUnpin for StorageKind
impl UnwindSafe for StorageKind
Blanket Implementations§
impl<T> Boilerplate for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
impl<T, U> Imply<T> for U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more