SquirrelJME/SquirrelJME

View on GitHub

Showing 195 of 203 total issues

Method start has 104 lines of code (exceeds 100 allowed). Consider refactoring.
Open

    public static TaskBracket start(
        JarPackageBracket[] __classPath, String __mainClass, String[] __args,
        String[] __sysPropPairs, int __stdOut, int __stdErr)
        throws MLECallError
    {

    Method hardwareDrawXRGB32Region has 17 arguments (exceeds 12 allowed). Consider refactoring.
    Open

            @NotNull PencilBracket __hardware, @NotNull int[] __data,
            @Range(from = 0, to = Integer.MAX_VALUE) int __off,
            @Range(from = 0, to = Integer.MAX_VALUE) int __scanLen,
            boolean __alpha, int __xSrc, int __ySrc,
            @Range(from = 0, to = Integer.MAX_VALUE) int __wSrc,

      Method __initializeEntries has 103 lines of code (exceeds 100 allowed). Consider refactoring.
      Open

          private static void __initializeEntries(Object[] __entries, int[] __tags,
              Object[] __rawdata)
              throws InvalidClassFormatException, NullPointerException
          {
              // Check

        Method execute has 103 lines of code (exceeds 100 allowed). Consider refactoring.
        Open

                @Override
                public JDWPPacket execute(JDWPHostController __controller,
                    JDWPPacket __packet)
                    throws JDWPException
                {

          Method __parseHeader has a Cognitive Complexity of 29 (exceeds 24 allowed). Consider refactoring.
          Open

              private void __parseHeader(DataInputStream __in)
                  throws IOException, NullPointerException
              {
                  // Check
                  if (__in == null)

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Method newMidiPlayer has a Cognitive Complexity of 29 (exceeds 24 allowed). Consider refactoring.
          Open

              @SquirrelJMEVendorApi
              public static MidiControlPlayer newMidiPlayer()
                  throws MediaException
              {
                  // See if the MIDI device property exists

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Consider simplifying this complex logical expression.
          Open

                  if (__jarOffset < 0 || (__jarOffset + __l) < 0 ||
                      (__jarOffset + __l) > libLen || __o < 0 || __l < 0 ||
                      (__o + __l) < 0 || (__o + __l) > bufLen)
                      throw new IndexOutOfBoundsException("IOOB");

            Consider simplifying this complex logical expression.
            Open

                    if (__properties == null || __accelerators == null ||
                        __metrics == null || __bitmap == null || __encoding == null ||
                        __scalablewidths == null || __glyphnames == null)
                        throw new NullPointerException("NARG");

              Consider simplifying this complex logical expression.
              Open

                                  if (!(c == '-' || c == '+' || (c >= '0' && c <= '9') ||
                                      c == 'e' || c == 'E' || c == '.'))
                                      throw new JsonParsingException(String.format(
                                          "illgnum", (char)c), jl);

                Consider simplifying this complex logical expression.
                Open

                        if (__jarOffset < 0 || (__jarOffset + __l) < 0 ||
                            (__jarOffset + __l) > libLen || __o < 0 || __l < 0 ||
                            (__o + __l) < 0 || (__o + __l) > bufLen)
                            throw new IndexOutOfBoundsException("IOOB");

                  Consider simplifying this complex logical expression.
                  Open

                                      if (c == '-' || c == '+' || (c >= '0' && c <= '9') ||
                                          c == 'e' || c == 'E' || c == '.')
                                      {
                                          // Make big E, a little e
                                          if (c == 'E')

                    Consider simplifying this complex logical expression.
                    Open

                                if (!((c >= 'a' && c <= 'z') ||
                                    (c >= 'A' && c <= 'Z') ||
                                    (c >= '0' && c <= '9') ||
                                    c == '_'))
                                    throw new IllegalArgumentException("CW09 " + __identifier);

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

                          public Point(String __s)
                              throws IllegalArgumentException, NullPointerException
                          {
                              if (__s == null)
                                  throw new NullPointerException("NARG");
                      modules/squirrel-quarrel/src/main/java/net/multiphasicapps/squirrelquarrel/util/Dimension.java on lines 53..75

                      Duplicated Code

                      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                      Tuning

                      This issue has a mass of 150.

                      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                      Refactorings

                      Further Reading

                      Method __drawRegion has 16 arguments (exceeds 12 allowed). Consider refactoring.
                      Open

                          private void __drawRegion(int[] __data, int __off, int __scanlen,
                              boolean __alpha, int __xsrc, int __ysrc, int __wsrc, int __hsrc,
                              int __trans, int __xdest, int __ydest, int __anch, int __wdest,
                              int __hdest, int __origImgWidth, int __origImgHeight)

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

                            public Dimension(String __s)
                                throws IllegalArgumentException, NullPointerException
                            {
                                if (__s == null)
                                    throw new NullPointerException("NARG");
                        modules/squirrel-quarrel/src/main/java/net/multiphasicapps/squirrelquarrel/util/Point.java on lines 53..75

                        Duplicated Code

                        Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                        Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                        When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                        Tuning

                        This issue has a mass of 150.

                        We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                        The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                        If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                        See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                        Refactorings

                        Further Reading

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

                        // -*- Mode: Java; indent-tabs-mode: t; tab-width: 4 -*-
                        // ---------------------------------------------------------------------------
                        // SquirrelJME
                        //     Copyright (C) Stephanie Gawroriski <xer@multiphasicapps.net>
                        // ---------------------------------------------------------------------------
                        modules/cldc-compact/src/main/java/cc/squirreljme/runtime/cldc/io/ASCIIEncoder.java on lines 1..81

                        Duplicated Code

                        Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                        Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                        When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                        Tuning

                        This issue has a mass of 149.

                        We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                        The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                        If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                        See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                        Refactorings

                        Further Reading

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

                        // -*- Mode: Java; indent-tabs-mode: t; tab-width: 4 -*-
                        // ---------------------------------------------------------------------------
                        // SquirrelJME
                        //     Copyright (C) Stephanie Gawroriski <xer@multiphasicapps.net>
                        // ---------------------------------------------------------------------------
                        modules/cldc-compact/src/main/java/cc/squirreljme/runtime/cldc/io/ISO88591Encoder.java on lines 1..81

                        Duplicated Code

                        Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                        Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                        When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                        Tuning

                        This issue has a mass of 149.

                        We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                        The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                        If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                        See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                        Refactorings

                        Further Reading

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

                                        {
                                            // Must be an array
                                            if (!this.__top().isArray())
                                                throw this.__fail(null, "eonotarr");
                                            
                        modules/json/src/main/java/net/multiphasicapps/jsr353/BaseDecoder.java on lines 202..238

                        Duplicated Code

                        Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                        Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                        When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                        Tuning

                        This issue has a mass of 146.

                        We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                        The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                        If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                        See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                        Refactorings

                        Further Reading

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

                                        {
                                            // Must be an object
                                            if (!this.__top().isObject())
                                                throw this.__fail(null, "eonotobj");
                                            
                        modules/json/src/main/java/net/multiphasicapps/jsr353/BaseDecoder.java on lines 267..303

                        Duplicated Code

                        Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                        Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                        When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                        Tuning

                        This issue has a mass of 146.

                        We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                        The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                        If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                        See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                        Refactorings

                        Further Reading

                        Method __unfilter has a Cognitive Complexity of 28 (exceeds 24 allowed). Consider refactoring.
                        Open

                            private byte[] __unfilter(InputStream __in, int __bpp)
                                throws IOException, NullPointerException
                            {
                                if (__in == null)
                                    throw new NullPointerException("NARG");

                        Cognitive Complexity

                        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                        A method's cognitive complexity is based on a few simple rules:

                        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                        • Code is considered more complex for each "break in the linear flow of the code"
                        • Code is considered more complex when "flow breaking structures are nested"

                        Further reading

                        Severity
                        Category
                        Status
                        Source
                        Language