11//! Charactor flags, e.g. `'T'`, used in LAPACK API
22
33/// Upper/Lower specification for seveal usages
4- #[ derive( Debug , Clone , Copy ) ]
4+ #[ derive( Debug , Clone , Copy , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
55#[ repr( u8 ) ]
66pub enum UPLO {
77 Upper = b'U' ,
@@ -22,7 +22,7 @@ impl UPLO {
2222 }
2323}
2424
25- #[ derive( Debug , Clone , Copy ) ]
25+ #[ derive( Debug , Clone , Copy , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
2626#[ repr( u8 ) ]
2727pub enum Transpose {
2828 No = b'N' ,
@@ -37,7 +37,7 @@ impl Transpose {
3737 }
3838}
3939
40- #[ derive( Debug , Clone , Copy ) ]
40+ #[ derive( Debug , Clone , Copy , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
4141#[ repr( u8 ) ]
4242pub enum NormType {
4343 One = b'O' ,
@@ -61,7 +61,7 @@ impl NormType {
6161}
6262
6363/// Flag for calculating eigenvectors or not
64- #[ derive( Debug , Clone , Copy , PartialEq , Eq ) ]
64+ #[ derive( Debug , Clone , Copy , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
6565#[ repr( u8 ) ]
6666pub enum JobEv {
6767 /// Calculate eigenvectors in addition to eigenvalues
@@ -95,7 +95,7 @@ impl JobEv {
9595/// Specifies how many of the columns of *U* and rows of *V*ᵀ are computed and returned.
9696///
9797/// For an input array of shape *m*×*n*, the following are computed:
98- #[ derive( Clone , Copy , Eq , PartialEq ) ]
98+ #[ derive( Debug , Clone , Copy , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
9999#[ repr( u8 ) ]
100100pub enum JobSvd {
101101 /// All *m* columns of *U* and all *n* rows of *V*ᵀ.
@@ -121,7 +121,7 @@ impl JobSvd {
121121}
122122
123123/// Specify whether input triangular matrix is unit or not
124- #[ derive( Debug , Clone , Copy ) ]
124+ #[ derive( Debug , Clone , Copy , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
125125#[ repr( u8 ) ]
126126pub enum Diag {
127127 /// Unit triangular matrix, i.e. all diagonal elements of the matrix are `1`
0 commit comments