// binary operator * // General includes. #include "base/cl_sysdep.h" // Specification. #include "cln/float.h" // Implementation. #include "integer/cl_I.h" #include "cln/sfloat.h" #include "cln/ffloat.h" #include "cln/dfloat.h" #include "cln/lfloat.h" #include "float/cl_F.h" #include "float/sfloat/cl_SF.h" #include "float/ffloat/cl_FF.h" #include "float/dfloat/cl_DF.h" #include "float/lfloat/cl_LF.h" namespace cln { const cl_R cl_F_I_mul (const cl_F& x, const cl_I& y) { if (eq(y,0)) { return 0; } // x * 0 = exakte 0 floatcase(x , /* SF */ return x * cl_I_to_SF(y); , /* FF */ return x * cl_I_to_FF(y); , /* DF */ return x * cl_I_to_DF(y); , /* LF */ return cl_LF_I_mul(x,y); ); } } // namespace cln