red6/dmn-check

View on GitHub
validators/src/main/java/de/redsix/dmncheck/util/Util.java

Summary

Maintainability
A
2 hrs
Test Coverage

Method zip has 30 lines of code (exceeds 25 allowed). Consider refactoring.
Open

    public static <A, B, C, D> Stream<D> zip(
            final Stream<? extends A> a,
            final Stream<? extends B> b,
            final Stream<? extends C> c,
            final TriFunction<? super A, ? super B, ? super C, ? extends D> zipper) {
Severity: Minor
Found in validators/src/main/java/de/redsix/dmncheck/util/Util.java - About 1 hr to fix

    Method zip has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
    Open

        public static <A, B, C, D> Stream<D> zip(
                final Stream<? extends A> a,
                final Stream<? extends B> b,
                final Stream<? extends C> c,
                final TriFunction<? super A, ? super B, ? super C, ? extends D> zipper) {
    Severity: Minor
    Found in validators/src/main/java/de/redsix/dmncheck/util/Util.java - About 35 mins to fix

    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 zip has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
    Open

        public static <A, B, C> Stream<C> zip(
                final Stream<? extends A> a,
                final Stream<? extends B> b,
                final BiFunction<? super A, ? super B, ? extends C> zipper) {
            Objects.requireNonNull(zipper);
    Severity: Minor
    Found in validators/src/main/java/de/redsix/dmncheck/util/Util.java - About 25 mins to fix

    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

    Parameter name 'c' must match pattern '^[a-z][a-z0-9][a-zA-Z0-9]*$'.
    Open

                final Stream<? extends C> c,

    Checks that method parameter names conform to a specified pattern.By using accessModifiers property it is possibleto specify different formats for methods at different visibility levels.

    To validate catch parameters please useCatchParameterName.

    To validate lambda parameters please useLambdaParameterName.

    This documentation is written and maintained by the Checkstyle community and is covered under the same license as the Checkstyle project.

    Line is longer than 100 characters (found 105).
    Open

                            Math.min(bSpliterator.getExactSizeIfKnown(), cSpliterator.getExactSizeIfKnown()))

    Checks for long lines.

    Rationale: Long lines are hard to read in printouts or if developershave limited screen space for the source code, e.g. if the IDEdisplays additional information like project tree, class hierarchy,etc.

    This documentation is written and maintained by the Checkstyle community and is covered under the same license as the Checkstyle project.

    Parameter name 'a' must match pattern '^[a-z][a-z0-9][a-zA-Z0-9]*$'.
    Open

                final Stream<? extends A> a,

    Checks that method parameter names conform to a specified pattern.By using accessModifiers property it is possibleto specify different formats for methods at different visibility levels.

    To validate catch parameters please useCatchParameterName.

    To validate lambda parameters please useLambdaParameterName.

    This documentation is written and maintained by the Checkstyle community and is covered under the same license as the Checkstyle project.

    Parameter name 'b' must match pattern '^[a-z][a-z0-9][a-zA-Z0-9]*$'.
    Open

                final Stream<? extends B> b,

    Checks that method parameter names conform to a specified pattern.By using accessModifiers property it is possibleto specify different formats for methods at different visibility levels.

    To validate catch parameters please useCatchParameterName.

    To validate lambda parameters please useLambdaParameterName.

    This documentation is written and maintained by the Checkstyle community and is covered under the same license as the Checkstyle project.

    '}' at column 21 should be alone on a line.
    Open

        private Util() {}

    Checks the placement of right curly braces ('}') for code blocks.This check supports if-else, try-catch-finally blocks, while-loops, for-loops,method definitions, class definitions, constructor definitions,instance, static initialization blocks, annotation definitions and enum definitions.For right curly brace of expression blocks of arrays, lambdas and class instancesplease follow issue#5945.For right curly brace of enum constant please follow issue#7519.

    This documentation is written and maintained by the Checkstyle community and is covered under the same license as the Checkstyle project.

    Parameter name 'b' must match pattern '^[a-z][a-z0-9][a-zA-Z0-9]*$'.
    Open

                final Stream<? extends B> b,

    Checks that method parameter names conform to a specified pattern.By using accessModifiers property it is possibleto specify different formats for methods at different visibility levels.

    To validate catch parameters please useCatchParameterName.

    To validate lambda parameters please useLambdaParameterName.

    This documentation is written and maintained by the Checkstyle community and is covered under the same license as the Checkstyle project.

    Parameter name 'a' must match pattern '^[a-z][a-z0-9][a-zA-Z0-9]*$'.
    Open

                final Stream<? extends A> a,

    Checks that method parameter names conform to a specified pattern.By using accessModifiers property it is possibleto specify different formats for methods at different visibility levels.

    To validate catch parameters please useCatchParameterName.

    To validate lambda parameters please useLambdaParameterName.

    This documentation is written and maintained by the Checkstyle community and is covered under the same license as the Checkstyle project.

    There are no issues that match your filters.

    Category
    Status