]> www.ginac.de Git - cln.git/blob - src/float/elem/cl_F_RA_mul.cc
5f2905ddc6f0affa1a3d870577c204cfc6d46a3c
[cln.git] / src / float / elem / cl_F_RA_mul.cc
1 // binary operator *
2
3 // General includes.
4 #include "cl_sysdep.h"
5
6 // Specification.
7 #include "cl_float.h"
8
9
10 // Implementation.
11
12 #include "cl_RA.h"
13 #include "cl_sfloat.h"
14 #include "cl_ffloat.h"
15 #include "cl_dfloat.h"
16 #include "cl_lfloat.h"
17 #include "cl_F.h"
18 #include "cl_SF.h"
19 #include "cl_FF.h"
20 #include "cl_DF.h"
21 #include "cl_LF.h"
22
23 const cl_R cl_F_RA_mul (const cl_F& x, const cl_RA& y)
24 {
25         if (eq(y,0)) { return 0; } // x * 0 = exakte 0
26         floatcase(x
27         , /* SF */      return x * cl_RA_to_SF(y);
28         , /* FF */      return x * cl_RA_to_FF(y);
29         , /* DF */      return x * cl_RA_to_DF(y);
30         , /* LF */      return cl_LF_RA_mul(x,y);
31         );
32 }