arithmetic-operations-for/naturals-big-endian

View on GitHub

Showing 93 of 93 total issues

Similar blocks of code found in 2 locations. Consider refactoring.
Open

export default function _convert_to_larger(f, t, a, ai, aj, b, bi, bj) {
assert(f >= 2);
assert(t >= 2);
assert(f < t);
assert(ai >= 0 && aj <= a.length);
Severity: Major
Found in src/core/convert/_convert_to_larger.js and 1 other location - About 1 day to fix
src/core/convert/_convert_to_smaller.js on lines 22..42

Similar blocks of code found in 2 locations. Consider refactoring.
Open

export default function _convert_to_smaller(f, t, a, ai, aj, b, bi, bj) {
assert(f >= 2);
assert(t >= 2);
assert(f > t);
assert(ai >= 0 && aj <= a.length);
Severity: Major
Found in src/core/convert/_convert_to_smaller.js and 1 other location - About 1 day to fix
src/core/convert/_convert_to_larger.js on lines 22..42

Function _extended_euclidean_algorithm_loop has a Cognitive Complexity of 46 (exceeds 5 allowed). Consider refactoring.
Open

export default function _extended_euclidean_algorithm_loop(
r,
R0,
R1,
S0,
Severity: Minor
Found in src/core/arithmetic/gcd/_extended_euclidean_algorithm_loop.js - About 7 hrs to fix

Function _extended_euclidean_algorithm_loop has 114 lines of code (exceeds 25 allowed). Consider refactoring.
Open

export default function _extended_euclidean_algorithm_loop(
r,
R0,
R1,
S0,
Severity: Major
Found in src/core/arithmetic/gcd/_extended_euclidean_algorithm_loop.js - About 4 hrs to fix

    Function _convert_dc has 95 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

    export default function _convert_dc(
    size_small_block,
    f,
    t,
    a,
    Severity: Major
    Found in src/core/convert/_convert_dc.js - About 3 hrs to fix

      Function _idivmod_dc has 47 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

      export default function _idivmod_dc(X, a, ai, aj, b, bi, bj, c, ci, cj) {
      assert(X >= 2);
      assert(ai >= 0 && aj <= a.length);
      assert(bi >= 0 && bj <= b.length);
      assert(ci >= 0 && cj <= c.length);
      Severity: Minor
      Found in src/core/arithmetic/div/_idivmod_dc.js - About 1 hr to fix

        Function _divmod has 13 arguments (exceeds 4 allowed). Consider refactoring.
        Open

        export default function _divmod(r, D, Di, Dj, d, di, dj, Q, Qi, Qj, R, Ri, Rj) {
        Severity: Major
        Found in src/api/arithmetic/div/_divmod.js - About 1 hr to fix

          Function _convert_dc has a Cognitive Complexity of 13 (exceeds 5 allowed). Consider refactoring.
          Open

          export default function _convert_dc(
          size_small_block,
          f,
          t,
          a,
          Severity: Minor
          Found in src/core/convert/_convert_dc.js - About 1 hr to fix

          Function _convert_to_larger_slow has a Cognitive Complexity of 13 (exceeds 5 allowed). Consider refactoring.
          Open

          export default function _convert_to_larger_slow(f, t, a, ai, aj, b, bi, bj) {
          assert(f >= 2);
          assert(f <= t);
          assert(ai >= 0 && aj <= a.length);
          assert(bi >= 0 && bj <= b.length);
          Severity: Minor
          Found in src/core/convert/_convert_to_larger_slow.js - About 1 hr to fix

          Function _imod_schoolbook_large_divisor has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
          Open

          export default function _imod_schoolbook_large_divisor(
          r,
          a,
          ai,
          aj,
          Severity: Minor
          Found in src/core/arithmetic/div/_imod_schoolbook_large_divisor.js - About 1 hr to fix

          Function _idivmod_schoolbook_large_divisor has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
          Open

          export default function _idivmod_schoolbook_large_divisor(
          r,
          a,
          ai,
          aj,
          Severity: Minor
          Found in src/core/arithmetic/div/_idivmod_schoolbook_large_divisor.js - About 1 hr to fix

          Function _karatsuba has 35 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

          export default function _karatsuba(r, a, ai, aj, b, bi, bj, c, ci, cj) {
          assert(r >= 2);
          assert(ai >= 0 && aj <= a.length);
          assert(bi >= 0 && bj <= b.length);
          assert(ci >= 0 && cj <= c.length);
          Severity: Minor
          Found in src/core/arithmetic/mul/_karatsuba.js - About 1 hr to fix

            Function _convert_to_larger_slow has 34 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

            export default function _convert_to_larger_slow(f, t, a, ai, aj, b, bi, bj) {
            assert(f >= 2);
            assert(f <= t);
            assert(ai >= 0 && aj <= a.length);
            assert(bi >= 0 && bj <= b.length);
            Severity: Minor
            Found in src/core/convert/_convert_to_larger_slow.js - About 1 hr to fix

              Function _pow_double has 33 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

              export default function _pow_double(r, x, a, ai, aj, c, ci, cj) {
              assert(r >= 2);
              assert(x >= 0);
              assert(ai >= 0 && aj <= a.length);
              assert(ci >= 0 && cj <= c.length);
              Severity: Minor
              Found in src/core/arithmetic/pow/_pow_double.js - About 1 hr to fix

                Similar blocks of code found in 2 locations. Consider refactoring.
                Open

                let _q = Math.min(r - 1, Math.floor((a[ai] * r + a[ai + 1]) / b[bi]));
                src/core/arithmetic/div/_imod_schoolbook_subroutine_do.js on lines 48..48

                Similar blocks of code found in 2 locations. Consider refactoring.
                Open

                const _q = Math.min(r - 1, Math.floor((a[ai] * r + a[ai + 1]) / b[bi]));
                Severity: Major
                Found in src/core/arithmetic/div/_imod_schoolbook_subroutine_do.js and 1 other location - About 1 hr to fix
                src/core/arithmetic/div/_idivmod_schoolbook_subroutine_do.js on lines 57..57

                Function _imod has 10 arguments (exceeds 4 allowed). Consider refactoring.
                Open

                export default function _imod(r, D, Di, Dj, d, di, dj, _, _i, _j) {
                Severity: Major
                Found in src/api/arithmetic/div/_imod.js - About 1 hr to fix

                  Function _idivmod_slow has a Cognitive Complexity of 11 (exceeds 5 allowed). Consider refactoring.
                  Open

                  export default function _idivmod_slow(x, r, ri, rj, b, bi, bj, q, qi) {
                  assert(x >= 2);
                  assert(ri >= 0 && rj <= r.length);
                  assert(bi >= 0 && bj <= b.length);
                  assert(qi >= 0);
                  Severity: Minor
                  Found in src/core/arithmetic/div/_idivmod_slow.js - About 1 hr to fix

                  Function _sub has 10 arguments (exceeds 4 allowed). Consider refactoring.
                  Open

                  export default function _sub(r, a, ai, aj, b, bi, bj, c, ci, cj) {
                  Severity: Major
                  Found in src/core/arithmetic/sub/_sub.js - About 1 hr to fix

                    Function _karatsuba has 10 arguments (exceeds 4 allowed). Consider refactoring.
                    Open

                    export default function _karatsuba(r, a, ai, aj, b, bi, bj, c, ci, cj) {
                    Severity: Major
                    Found in src/core/arithmetic/mul/_karatsuba.js - About 1 hr to fix
                      Severity
                      Category
                      Status
                      Source
                      Language