]> www.ginac.de Git - cln.git/blobdiff - src/float/transcendental/cl_LF_ratseries_qab.cc
Use paths relative the `src' directory in the #include directives.
[cln.git] / src / float / transcendental / cl_LF_ratseries_qab.cc
index 5bdd6eb6a1ecbc94e5c0dfa56ca263b73ce92445..5908bcc19c394037bb69beb999ce618c63eb9259 100644 (file)
@@ -1,18 +1,18 @@
-// eval_rational_series().
+// eval_rational_series<bool>().
 
 // General includes.
-#include "cl_sysdep.h"
+#include "base/cl_sysdep.h"
 
 // Specification.
-#include "cl_LF_tran.h"
+#include "float/transcendental/cl_LF_tran.h"
 
 
 // Implementation.
 
 #include "cln/lfloat.h"
 #include "cln/integer.h"
-#include "cln/abort.h"
-#include "cl_LF.h"
+#include "cln/exception.h"
+#include "float/lfloat/cl_LF.h"
 
 namespace cln {
 
@@ -22,13 +22,13 @@ namespace cln {
 // and T = B*Q*S (all integers). On entry N1 < N2.
 // P will not be computed if a NULL pointer is passed.
 
-static void eval_qab_series_aux (uintL N1, uintL N2,
+static void eval_qab_series_aux (uintC N1, uintC N2,
                                  const cl_qab_series& args,
                                  cl_I* Q, cl_I* B, cl_I* T)
 {
        switch (N2 - N1) {
        case 0:
-               cl_abort(); break;
+               throw runtime_exception(); break;
        case 1:
                *Q = args.qv[N1];
                *B = args.bv[N1];
@@ -65,7 +65,7 @@ static void eval_qab_series_aux (uintL N1, uintL N2,
                break;
                }
        default: {
-               var uintL Nm = (N1+N2)/2; // midpoint
+               var uintC Nm = (N1+N2)/2; // midpoint
                // Compute left part.
                var cl_I LQ, LB, LT;
                eval_qab_series_aux(N1,Nm,args,&LQ,&LB,&LT);
@@ -82,7 +82,8 @@ static void eval_qab_series_aux (uintL N1, uintL N2,
        }
 }
 
-const cl_LF eval_rational_series (uintL N, const cl_qab_series& args, uintC len)
+template<>
+const cl_LF eval_rational_series<false> (uintC N, const cl_qab_series& args, uintC len)
 {
        if (N==0)
                return cl_I_to_LF(0,len);