5 #ifndef MYRAMATH_EXPRESSION_LOGICAL_H 6 #define MYRAMATH_EXPRESSION_LOGICAL_H 13 #include <myramath/MYRAMATH_EXPORT.h> 19 template<
int Arity,
class Number>
class Expression;
24 MYRAMATH_EXPORT Expression<1,bool> operator< (const Expression<1,NumberS>& A,
const Expression<1,NumberS>& B);
26 MYRAMATH_EXPORT Expression<1,bool> operator< (const Expression<1,NumberD>& A,
const Expression<1,NumberD>& B);
27 MYRAMATH_EXPORT Expression<2,bool> operator< (const Expression<2,NumberS>& A,
const Expression<2,NumberS>& B);
28 MYRAMATH_EXPORT Expression<2,bool> operator< (const Expression<2,NumberD>& A,
const Expression<2,NumberD>& B);
32 MYRAMATH_EXPORT Expression<1,bool> operator< (const Expression<1,NumberS>& A, NumberS b);
34 MYRAMATH_EXPORT Expression<1,bool> operator< (const Expression<1,NumberD>& A, NumberD b);
35 MYRAMATH_EXPORT Expression<2,bool> operator< (const Expression<2,NumberS>& A, NumberS b);
36 MYRAMATH_EXPORT Expression<2,bool> operator< (const Expression<2,NumberD>& A, NumberD b);
40 MYRAMATH_EXPORT Expression<1,bool> operator< (NumberS a, const Expression<1,NumberS>& B);
42 MYRAMATH_EXPORT Expression<1,bool> operator< (NumberD a, const Expression<1,NumberD>& B);
43 MYRAMATH_EXPORT Expression<2,bool> operator< (NumberS a, const Expression<2,NumberS>& B);
44 MYRAMATH_EXPORT Expression<2,bool> operator< (NumberD a, const Expression<2,NumberD>& B);
50 MYRAMATH_EXPORT Expression<1,bool> operator> (
const Expression<1,NumberS>& A,
const Expression<1,NumberS>& B);
52 MYRAMATH_EXPORT Expression<1,bool> operator> (
const Expression<1,NumberD>& A,
const Expression<1,NumberD>& B);
53 MYRAMATH_EXPORT Expression<2,bool> operator> (
const Expression<2,NumberS>& A,
const Expression<2,NumberS>& B);
54 MYRAMATH_EXPORT Expression<2,bool> operator> (
const Expression<2,NumberD>& A,
const Expression<2,NumberD>& B);
58 MYRAMATH_EXPORT Expression<1,bool> operator> (
const Expression<1,NumberS>& A, NumberS b);
60 MYRAMATH_EXPORT Expression<1,bool> operator> (
const Expression<1,NumberD>& A, NumberD b);
61 MYRAMATH_EXPORT Expression<2,bool> operator> (
const Expression<2,NumberS>& A, NumberS b);
62 MYRAMATH_EXPORT Expression<2,bool> operator> (
const Expression<2,NumberD>& A, NumberD b);
66 MYRAMATH_EXPORT Expression<1,bool> operator> (NumberS a,
const Expression<1,NumberS>& B);
68 MYRAMATH_EXPORT Expression<1,bool> operator> (NumberD a,
const Expression<1,NumberD>& B);
69 MYRAMATH_EXPORT Expression<2,bool> operator> (NumberS a,
const Expression<2,NumberS>& B);
70 MYRAMATH_EXPORT Expression<2,bool> operator> (NumberD a,
const Expression<2,NumberD>& B);
76 MYRAMATH_EXPORT Expression<1,bool> operator&& (
const Expression<1,bool>& A,
const Expression<1,bool>& B);
78 MYRAMATH_EXPORT Expression<2,bool> operator&& (
const Expression<2,bool>& A,
const Expression<2,bool>& B);
84 MYRAMATH_EXPORT Expression<1,bool> operator|| (
const Expression<1,bool>& A,
const Expression<1,bool>& B);
86 MYRAMATH_EXPORT Expression<2,bool> operator|| (
const Expression<2,bool>& A,
const Expression<2,bool>& B);
92 MYRAMATH_EXPORT Expression<1,bool> operator! (
const Expression<1,bool>& A);
94 MYRAMATH_EXPORT Expression<2,bool> operator! (
const Expression<2,bool>& A);
100 MYRAMATH_EXPORT Expression<1,NumberS> ternary (
const Expression<1,bool>& A,
const Expression<1,NumberS>& B,
const Expression<1,NumberS>& C);
102 MYRAMATH_EXPORT Expression<1,NumberD> ternary (
const Expression<1,bool>& A,
const Expression<1,NumberD>& B,
const Expression<1,NumberD>& C);
103 MYRAMATH_EXPORT Expression<1,NumberC> ternary (
const Expression<1,bool>& A,
const Expression<1,NumberC>& B,
const Expression<1,NumberC>& C);
104 MYRAMATH_EXPORT Expression<1,NumberZ> ternary (
const Expression<1,bool>& A,
const Expression<1,NumberZ>& B,
const Expression<1,NumberZ>& C);
105 MYRAMATH_EXPORT Expression<2,NumberS> ternary (
const Expression<2,bool>& A,
const Expression<2,NumberS>& B,
const Expression<2,NumberS>& C);
106 MYRAMATH_EXPORT Expression<2,NumberD> ternary (
const Expression<2,bool>& A,
const Expression<2,NumberD>& B,
const Expression<2,NumberD>& C);
107 MYRAMATH_EXPORT Expression<2,NumberC> ternary (
const Expression<2,bool>& A,
const Expression<2,NumberC>& B,
const Expression<2,NumberC>& C);
108 MYRAMATH_EXPORT Expression<2,NumberZ> ternary (
const Expression<2,bool>& A,
const Expression<2,NumberZ>& B,
const Expression<2,NumberZ>& C);
114 MYRAMATH_EXPORT
bool equals(
const Expression<1,bool>& A,
const Expression<1,bool>& B);
116 MYRAMATH_EXPORT
bool equals(
const Expression<2,bool>& A,
const Expression<2,bool>& B);
Various utility functions/classes related to scalar Number types.