]> www.ginac.de Git - cln.git/blob - cl_RA_signum.cc
40f53803389fec02445f070a1c13ed08004eb773
[cln.git] / cl_RA_signum.cc
1 // signum().
2
3 // General includes.
4 #include "cl_sysdep.h"
5
6 // Specification.
7 #include "cln/rational.h"
8
9
10 // Implementation.
11
12 #include "cl_RA.h"
13 #include "cl_I.h"
14
15 namespace cln {
16
17 MAYBE_INLINE
18 const cl_RA signum (const cl_RA& x)
19 {
20         if (minusp(x)) { return -1; } // x<0 -> -1
21         elif (zerop(x)) { return 0; } // x=0 -> 0
22         else { return 1; } // x>0 -> +1
23 }
24
25 }  // namespace cln