mech_matrix/
lib.rs

1#![no_main]
2#![allow(warnings)]
3#![feature(where_clause_attrs)]
4#[macro_use]
5extern crate mech_core;
6#[cfg(feature = "matrix")]
7extern crate nalgebra as na;
8extern crate paste;
9
10use mech_core::*;
11
12use paste::paste;
13
14#[cfg(feature = "vector3")]
15use nalgebra::Vector3;
16#[cfg(feature = "vectord")]
17use nalgebra::DVector;
18#[cfg(feature = "vector2")]
19use nalgebra::Vector2;
20#[cfg(feature = "vector4")]
21use nalgebra::Vector4;
22#[cfg(feature = "rowdvector")]
23use nalgebra::RowDVector;
24#[cfg(feature = "row_vectord")]
25use nalgebra::RowDVector;
26#[cfg(feature = "matrix1")]
27use nalgebra::Matrix1;
28#[cfg(feature = "matrix3")]
29use nalgebra::Matrix3;
30#[cfg(feature = "matrix4")]
31use nalgebra::Matrix4;
32#[cfg(feature = "row_vector3")]
33use nalgebra::RowVector3;
34#[cfg(feature = "row_vector4")]
35use nalgebra::RowVector4;
36#[cfg(feature = "row_vector2")]
37use nalgebra::RowVector2;
38#[cfg(feature = "matrixd")]
39use nalgebra::DMatrix;
40#[cfg(feature = "matrix2x3")]
41use nalgebra::Matrix2x3;
42#[cfg(feature = "matrix3x2")]
43use nalgebra::Matrix3x2;
44#[cfg(feature = "matrix2")]
45use nalgebra::Matrix2;
46
47use std::ops::*;
48#[cfg(any(feature = "transpose", feature = "matmul"))]
49use num_traits::*;
50use std::fmt::Debug;
51#[cfg(feature = "matrix")]
52use mech_core::matrix::Matrix;
53
54use std::fmt::Display;
55
56#[cfg(feature = "matmul")]
57pub mod matmul;
58#[cfg(feature = "transpose")]
59pub mod transpose;
60#[cfg(feature = "dot")]
61pub mod dot;
62//pub mod cross;
63
64#[cfg(feature = "matmul")]
65pub use self::matmul::*;
66#[cfg(feature = "transpose")]
67pub use self::transpose::*;
68#[cfg(feature = "dot")]
69pub use self::dot::*;
70//pub use self::cross::*;
71
72// ----------------------------------------------------------------------------
73// Matrix Library
74// ----------------------------------------------------------------------------