Crate mdarray[−][src]
Expand description
Multidimensional array for Rust
Overview
The mdarray crate provides a multidimensional array for Rust. Its main target is for numeric types, however generic types are supported as well. The purpose is to provide a generic container type that is simple and flexible to use, with interworking to other crates for e.g. BLAS/LAPACK functionality.
Here are the main features of mdarray:
- Dense array type, where the rank and element order is known at compile time.
- Static array type, where the rank, shape and element order is known at compile time.
- Column-major and row-major element order.
- Subarrays (views) can be created with arbitrary shapes and strides.
- Standard Rust mechanisms are used for e.g. slices, indexing and iteration.
The design is inspired from the Rust ndarray and nalgebra crates, the proposed C++ mdspan/mdarray types and multidimensional arrays in Julia and Matlab.
Note that this crate requires nightly Rust toolchain.
Structs
Column-major order, for indexing and iteration over array elements.
Shape for static 1-dimensional array.
Shape for static 2-dimensional array.
Multidimensional array with static rank and element order.
Row-major order, for indexing and iteration over array elements.
Multidimensional array view with static rank and element order.
Traits
Order for indexing and iteration over array elements.
Type Definitions
Dense multidimensional array with row-major element order.
Dense multidimensional array view with row-major element order.
Dense multidimensional array with static rank and element order, and dynamic shape.
Dense multidimensional array view with static rank and element order, and dynamic shape.
Dense multidimensional array with column-major element order.
Static 1-dimensional array with row-major element order.
Static 2-dimensional array with row-major element order.
Static 1-dimensional array with column-major element order.
Static 2-dimensional array with column-major element order.
Dense multidimensional array with static rank, shape and element order.
Strided multidimensional array view with static rank and element order, and dynamic shape.
Dense multidimensional array view with column-major element order.