Struct rin::math::base::SliceStorage [−][src]
pub struct SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim, { /* fields omitted */ }
A matrix data storage for a matrix slice. Only contains an internal reference to another matrix data storage.
Implementations
impl<'a, N, R, C, RStride, CStride> SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]
impl<'a, N, R, C, RStride, CStride> SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]pub unsafe fn from_raw_parts(
ptr: *const N,
shape: (R, C),
strides: (RStride, CStride)
) -> SliceStorage<'a, N, R, C, RStride, CStride> where
RStride: Dim,
CStride: Dim,
[src]
ptr: *const N,
shape: (R, C),
strides: (RStride, CStride)
) -> SliceStorage<'a, N, R, C, RStride, CStride> where
RStride: Dim,
CStride: Dim,
Create a new matrix slice without bound checking and from a raw pointer.
impl<'a, N, R, C> SliceStorage<'a, N, R, C, Dynamic, Dynamic> where
C: Dim,
N: Scalar,
R: Dim,
[src]
impl<'a, N, R, C> SliceStorage<'a, N, R, C, Dynamic, Dynamic> where
C: Dim,
N: Scalar,
R: Dim,
[src]pub unsafe fn new_unchecked<RStor, CStor, S>(
storage: &'a S,
start: (usize, usize),
shape: (R, C)
) -> SliceStorage<'a, N, R, C, <S as Storage<N, RStor, CStor>>::RStride, <S as Storage<N, RStor, CStor>>::CStride> where
S: Storage<N, RStor, CStor>,
RStor: Dim,
CStor: Dim,
[src]
storage: &'a S,
start: (usize, usize),
shape: (R, C)
) -> SliceStorage<'a, N, R, C, <S as Storage<N, RStor, CStor>>::RStride, <S as Storage<N, RStor, CStor>>::CStride> where
S: Storage<N, RStor, CStor>,
RStor: Dim,
CStor: Dim,
Create a new matrix slice without bound checking.
pub unsafe fn new_with_strides_unchecked<S, RStor, CStor, RStride, CStride>(
storage: &'a S,
start: (usize, usize),
shape: (R, C),
strides: (RStride, CStride)
) -> SliceStorage<'a, N, R, C, RStride, CStride> where
S: Storage<N, RStor, CStor>,
RStride: Dim,
CStride: Dim,
RStor: Dim,
CStor: Dim,
[src]
storage: &'a S,
start: (usize, usize),
shape: (R, C),
strides: (RStride, CStride)
) -> SliceStorage<'a, N, R, C, RStride, CStride> where
S: Storage<N, RStor, CStor>,
RStride: Dim,
CStride: Dim,
RStor: Dim,
CStor: Dim,
Create a new matrix slice without bound checking.
Trait Implementations
impl<'a, N, R, C, RStride, CStride> Clone for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]
impl<'a, N, R, C, RStride, CStride> Clone for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]pub fn clone(&self) -> SliceStorage<'a, N, R, C, RStride, CStride>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<'a, N, R, C, RStride, CStride> Debug for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Debug + Dim,
N: Debug + Scalar,
R: Debug + Dim,
RStride: Debug + Dim,
CStride: Debug + Dim,
[src]
impl<'a, N, R, C, RStride, CStride> Debug for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Debug + Dim,
N: Debug + Scalar,
R: Debug + Dim,
RStride: Debug + Dim,
CStride: Debug + Dim,
[src]impl<'a, N, R, C, RStride, CStride> Storage<N, R, C> for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]
impl<'a, N, R, C, RStride, CStride> Storage<N, R, C> for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]type RStride = RStride
The static stride of this storage’s rows.
type CStride = CStride
The static stride of this storage’s columns.
pub fn ptr(&self) -> *const N
[src]
pub fn shape(&self) -> (R, C)
[src]
pub fn strides(
&self
) -> (<SliceStorage<'a, N, R, C, RStride, CStride> as Storage<N, R, C>>::RStride, <SliceStorage<'a, N, R, C, RStride, CStride> as Storage<N, R, C>>::CStride)
[src]
&self
) -> (<SliceStorage<'a, N, R, C, RStride, CStride> as Storage<N, R, C>>::RStride, <SliceStorage<'a, N, R, C, RStride, CStride> as Storage<N, R, C>>::CStride)
pub fn is_contiguous(&self) -> bool
[src]
pub fn into_owned(self) -> <DefaultAllocator as Allocator<N, R, C>>::Buffer where
DefaultAllocator: Allocator<N, R, C>,
[src]
DefaultAllocator: Allocator<N, R, C>,
pub fn clone_owned(&self) -> <DefaultAllocator as Allocator<N, R, C>>::Buffer where
DefaultAllocator: Allocator<N, R, C>,
[src]
DefaultAllocator: Allocator<N, R, C>,
pub fn as_slice(&self) -> &[N]ⓘ
[src]
pub fn linear_index(&self, irow: usize, icol: usize) -> usize
[src]
pub unsafe fn get_address_unchecked_linear(&self, i: usize) -> *const N
[src]
pub unsafe fn get_address_unchecked(&self, irow: usize, icol: usize) -> *const N
[src]
pub unsafe fn get_unchecked_linear(&self, i: usize) -> &N
[src]
pub unsafe fn get_unchecked(&self, irow: usize, icol: usize) -> &N
[src]
impl<'a, N, R, C> ContiguousStorage<N, R, C> for SliceStorage<'a, N, R, C, U1, R> where
C: Dim + IsNotStaticOne,
N: Scalar,
R: DimName,
[src]
C: Dim + IsNotStaticOne,
N: Scalar,
R: DimName,
impl<'a, N, R, CStride> ContiguousStorage<N, R, U1> for SliceStorage<'a, N, R, U1, U1, CStride> where
N: Scalar,
R: Dim,
CStride: Dim,
[src]
N: Scalar,
R: Dim,
CStride: Dim,
impl<'a, N, R, C, RStride, CStride> Copy for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]
C: Dim,
N: Scalar,
R: Dim,
RStride: Dim,
CStride: Dim,
impl<'a, N, R, C, RStride, CStride> Send for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar + Send,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]
C: Dim,
N: Scalar + Send,
R: Dim,
RStride: Dim,
CStride: Dim,
impl<'a, N, R, C, RStride, CStride> Sync for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Dim,
N: Scalar + Sync,
R: Dim,
RStride: Dim,
CStride: Dim,
[src]
C: Dim,
N: Scalar + Sync,
R: Dim,
RStride: Dim,
CStride: Dim,
Auto Trait Implementations
impl<'a, N, R, C, RStride, CStride> RefUnwindSafe for SliceStorage<'a, N, R, C, RStride, CStride> where
C: RefUnwindSafe,
CStride: RefUnwindSafe,
N: RefUnwindSafe,
R: RefUnwindSafe,
RStride: RefUnwindSafe,
C: RefUnwindSafe,
CStride: RefUnwindSafe,
N: RefUnwindSafe,
R: RefUnwindSafe,
RStride: RefUnwindSafe,
impl<'a, N, R, C, RStride, CStride> Unpin for SliceStorage<'a, N, R, C, RStride, CStride> where
C: Unpin,
CStride: Unpin,
R: Unpin,
RStride: Unpin,
C: Unpin,
CStride: Unpin,
R: Unpin,
RStride: Unpin,
impl<'a, N, R, C, RStride, CStride> UnwindSafe for SliceStorage<'a, N, R, C, RStride, CStride> where
C: UnwindSafe,
CStride: UnwindSafe,
N: RefUnwindSafe,
R: UnwindSafe,
RStride: UnwindSafe,
C: UnwindSafe,
CStride: UnwindSafe,
N: RefUnwindSafe,
R: UnwindSafe,
RStride: UnwindSafe,
Blanket Implementations
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]pub fn to_subset(&self) -> Option<SS>
[src]
pub fn is_in_subset(&self) -> bool
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]
pub fn from_subset(element: &SS) -> SP
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]pub fn to_subset(&self) -> Option<SS>
[src]
pub fn is_in_subset(&self) -> bool
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]
pub fn from_subset(element: &SS) -> SP
[src]
impl<T> Slottable for T where
T: Copy,
[src]
T: Copy,