Macro rulinalg::matrix
[−]
[src]
macro_rules! matrix { ($( $( $x: expr ),*);*) => { ... }; }
The matrix!
macro enables easy construction of small matrices.
This is particularly useful when writing tests involving matrices. Note that the macro is just a convenient wrapper around the Matrix constructors, and as a result the matrix is still allocated on the heap.
Rows are separated by semi-colons, while commas separate the columns. Users of MATLAB will find this style familiar. If the dimensions don't match, the macro will fail to compile.
Examples
#[macro_use] extern crate rulinalg; // Construct a 3x3 matrix of f64 let mat = matrix!(1.0, 2.0, 3.0; 4.0, 5.0, 6.0; 7.0, 8.0, 9.0);Run
To construct matrices of other types, specify the type by the usual Rust syntax:
use rulinalg::matrix::Matrix; // Construct a 2x3 matrix of f32 let mat: Matrix<f32> = matrix!(1.0, 2.0, 3.0; 4.0, 5.0, 6.0); // Or let mat = matrix!(1.0, 2.0, 3.0; 4.0, 5.0, 6.0f32);Run