Enum StorageKind
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§
§impl Clone for StorageKind
impl Clone for StorageKind
§fn clone(&self) -> StorageKind
fn clone(&self) -> StorageKind
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for StorageKind
impl Debug for StorageKind
§impl PartialEq for StorageKind
impl PartialEq for StorageKind
impl Copy for StorageKind
impl Eq for StorageKind
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<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
§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<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.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