nalgebra_lapack/
lapack_terminology.rs1#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
3pub enum Side {
4 Left,
6 Right,
8}
9
10#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
15pub enum Transposition {
16 No,
18 Transpose,
20}
21
22#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
24pub enum TriangularStructure {
25 Upper,
27 Lower,
29}
30
31#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
33pub enum DiagonalKind {
34 Unit,
36 NonUnit,
38}
39
40impl Side {
41 pub(crate) fn into_lapack_side_character(self) -> u8 {
42 match self {
43 Side::Left => b'L',
44 Side::Right => b'R',
45 }
46 }
47}
48
49impl TriangularStructure {
50 pub(crate) fn into_lapack_uplo_character(self) -> u8 {
51 match self {
52 Self::Upper => b'U',
53 Self::Lower => b'L',
54 }
55 }
56}
57
58impl DiagonalKind {
59 pub(crate) fn into_lapack_diag_character(self) -> u8 {
60 match self {
61 DiagonalKind::Unit => b'U',
62 DiagonalKind::NonUnit => b'N',
63 }
64 }
65}