Struct SparseMatrixIndexCSX
pub struct SparseMatrixIndexCSX<'a> {
pub _tab: Table<'a>,
}
Expand description
Compressed Sparse format, that is matrix-specific.
Fields§
§_tab: Table<'a>
Implementations§
§impl<'a> SparseMatrixIndexCSX<'a>
impl<'a> SparseMatrixIndexCSX<'a>
pub const VT_COMPRESSEDAXIS: u16 = 4u16
pub const VT_INDPTRTYPE: u16 = 6u16
pub const VT_INDPTRBUFFER: u16 = 8u16
pub const VT_INDICESTYPE: u16 = 10u16
pub const VT_INDICESBUFFER: u16 = 12u16
pub unsafe fn init_from_table(table: Table<'a>) -> SparseMatrixIndexCSX<'a>
pub fn create<'bldr, 'args, 'mut_bldr, A>(
_fbb: &'mut_bldr mut FlatBufferBuilder<'bldr, A>,
args: &'args SparseMatrixIndexCSXArgs<'args>,
) -> WIPOffset<SparseMatrixIndexCSX<'bldr>>where
'bldr: 'args,
'args: 'mut_bldr,
A: Allocator + 'bldr,
pub fn compressedAxis(&self) -> SparseMatrixCompressedAxis
pub fn compressedAxis(&self) -> SparseMatrixCompressedAxis
Which axis, row or column, is compressed
pub fn indptrType(&self) -> Int<'a>
pub fn indptrType(&self) -> Int<'a>
The type of values in indptrBuffer
pub fn indptrBuffer(&self) -> &'a Buffer
pub fn indptrBuffer(&self) -> &'a Buffer
indptrBuffer stores the location and size of indptr array that
represents the range of the rows.
The i-th row spans from indptr[i]
to indptr[i+1]
in the data.
The length of this array is 1 + (the number of rows), and the type
of index value is long.
For example, let X be the following 6x4 matrix:
X := [[0, 1, 2, 0],
[0, 0, 3, 0],
[0, 4, 0, 5],
[0, 0, 0, 0],
[6, 0, 7, 8],
[0, 9, 0, 0]].
The array of non-zero values in X is:
values(X) = [1, 2, 3, 4, 5, 6, 7, 8, 9].
And the indptr of X is:
indptr(X) = [0, 2, 3, 5, 5, 8, 10].
pub fn indicesType(&self) -> Int<'a>
pub fn indicesType(&self) -> Int<'a>
The type of values in indicesBuffer
pub fn indicesBuffer(&self) -> &'a Buffer
pub fn indicesBuffer(&self) -> &'a Buffer
indicesBuffer stores the location and size of the array that contains the column indices of the corresponding non-zero values. The type of index value is long.
For example, the indices of the above X is:
indices(X) = [1, 2, 2, 1, 3, 0, 2, 3, 1].
Note that the indices are sorted in lexicographical order for each row.
Trait Implementations§
§impl<'a> Clone for SparseMatrixIndexCSX<'a>
impl<'a> Clone for SparseMatrixIndexCSX<'a>
§fn clone(&self) -> SparseMatrixIndexCSX<'a>
fn clone(&self) -> SparseMatrixIndexCSX<'a>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for SparseMatrixIndexCSX<'_>
impl Debug for SparseMatrixIndexCSX<'_>
§impl<'a> Follow<'a> for SparseMatrixIndexCSX<'a>
impl<'a> Follow<'a> for SparseMatrixIndexCSX<'a>
type Inner = SparseMatrixIndexCSX<'a>
§impl<'a> PartialEq for SparseMatrixIndexCSX<'a>
impl<'a> PartialEq for SparseMatrixIndexCSX<'a>
§impl Verifiable for SparseMatrixIndexCSX<'_>
impl Verifiable for SparseMatrixIndexCSX<'_>
§fn run_verifier(
v: &mut Verifier<'_, '_>,
pos: usize,
) -> Result<(), InvalidFlatbuffer>
fn run_verifier( v: &mut Verifier<'_, '_>, pos: usize, ) -> Result<(), InvalidFlatbuffer>
pos
in the verifier’s buffer.
Should not need to be called directly.impl<'a> Copy for SparseMatrixIndexCSX<'a>
impl<'a> StructuralPartialEq for SparseMatrixIndexCSX<'a>
Auto Trait Implementations§
impl<'a> Freeze for SparseMatrixIndexCSX<'a>
impl<'a> RefUnwindSafe for SparseMatrixIndexCSX<'a>
impl<'a> Send for SparseMatrixIndexCSX<'a>
impl<'a> Sync for SparseMatrixIndexCSX<'a>
impl<'a> Unpin for SparseMatrixIndexCSX<'a>
impl<'a> UnwindSafe for SparseMatrixIndexCSX<'a>
Blanket Implementations§
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
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
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>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request