Apache Commons logo Commons JEXL

PMD Results

The following document contains the results of PMD 7.20.0.

Violations By Priority

Priority 2

org/apache/commons/jexl3/JexlContext.java

Rule Violation Line
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 54
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 87
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 104
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 112
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 134
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 159
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 175
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 199

org/apache/commons/jexl3/introspection/JexlUberspect.java

Rule Violation Line
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 88
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 121
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 179

org/apache/commons/jexl3/parser/JexlNode.java

Rule Violation Line
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 40

org/apache/commons/jexl3/parser/JexlScriptParser.java

Rule Violation Line
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 29

Priority 3

org/apache/commons/jexl3/JexlException.java

Rule Violation Line
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 696702

org/apache/commons/jexl3/internal/Debugger.java

Rule Violation Line
AvoidStringBufferField StringBuffers can grow quite a lot, and so may become a source of memory leak (if the owning class has a long life time). 119
UnusedAssignment The updated value of variable 'nc' is never used 931
UnusedAssignment The updated value of variable 'nc' is never used 932
UnusedAssignment The updated value of variable 'nc' is never used 934

org/apache/commons/jexl3/internal/Engine.java

Rule Violation Line
PreserveStackTrace Thrown exception does not preserve the stack trace of exception 'xjexl' on all code paths 646
PreserveStackTrace Thrown exception does not preserve the stack trace of exception 'xjexl' on all code paths 1087

org/apache/commons/jexl3/internal/IntegerRange.java

Rule Violation Line
LooseCoupling Avoid using implementation types like 'IntegerRange'; use the interface instead 158
LooseCoupling Avoid using implementation types like 'IntegerRange'; use the interface instead 224

org/apache/commons/jexl3/internal/Interpreter.java

Rule Violation Line
UnusedAssignment The updated value of variable 'nc' is never used 721
UnusedAssignment The updated value of variable 'nc' is never used 723
PreserveStackTrace Thrown exception does not preserve the stack trace of exception 'xcancel' on all code paths 796
PreserveStackTrace Thrown exception does not preserve the stack trace of exception 'xjexl' on all code paths 800
UnusedAssignment The updated value of variable 'nc' is never used 2175

org/apache/commons/jexl3/internal/LongRange.java

Rule Violation Line
LooseCoupling Avoid using implementation types like 'LongRange'; use the interface instead 160
LooseCoupling Avoid using implementation types like 'LongRange'; use the interface instead 226

org/apache/commons/jexl3/internal/TemplateDebugger.java

Rule Violation Line
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 304322

org/apache/commons/jexl3/internal/TemplateEngine.java

Rule Violation Line
EnumComparison Enums should be compared using == 102
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 9991139
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 1019
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 1036
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 1067
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 1078
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 1121
LooseCoupling Avoid using implementation types like 'ArrayList'; use the interface instead 1201

org/apache/commons/jexl3/internal/TemplateScript.java

Rule Violation Line
MethodReturnsInternalArray Returning 'exprs' may expose an internal array. 291

org/apache/commons/jexl3/internal/introspection/AbstractExecutor.java

Rule Violation Line
AbstractClassWithoutAbstractMethod This abstract class does not have any abstract methods 31

org/apache/commons/jexl3/internal/introspection/MethodKey.java

Rule Violation Line
MethodReturnsInternalArray Returning 'params' may expose an internal array. 769

org/apache/commons/jexl3/internal/introspection/Uberspect.java

Rule Violation Line
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 337378
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 405436

org/apache/commons/jexl3/parser/JexlParser.java

Rule Violation Line
LooseCoupling Avoid using implementation types like 'SwitchSet'; use the interface instead 381

Files

org/apache/commons/jexl3/JexlContext.java

Rule Violation Priority Line
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 54
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 87
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 104
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 112
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 134
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 159
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 175
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 199

org/apache/commons/jexl3/JexlException.java

Rule Violation Priority Line
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 3 696702

org/apache/commons/jexl3/internal/Debugger.java

Rule Violation Priority Line
AvoidStringBufferField StringBuffers can grow quite a lot, and so may become a source of memory leak (if the owning class has a long life time). 3 119
UnusedAssignment The updated value of variable 'nc' is never used 3 931
UnusedAssignment The updated value of variable 'nc' is never used 3 932
UnusedAssignment The updated value of variable 'nc' is never used 3 934

org/apache/commons/jexl3/internal/Engine.java

Rule Violation Priority Line
PreserveStackTrace Thrown exception does not preserve the stack trace of exception 'xjexl' on all code paths 3 646
PreserveStackTrace Thrown exception does not preserve the stack trace of exception 'xjexl' on all code paths 3 1087

org/apache/commons/jexl3/internal/IntegerRange.java

Rule Violation Priority Line
LooseCoupling Avoid using implementation types like 'IntegerRange'; use the interface instead 3 158
LooseCoupling Avoid using implementation types like 'IntegerRange'; use the interface instead 3 224

org/apache/commons/jexl3/internal/Interpreter.java

Rule Violation Priority Line
UnusedAssignment The updated value of variable 'nc' is never used 3 721
UnusedAssignment The updated value of variable 'nc' is never used 3 723
PreserveStackTrace Thrown exception does not preserve the stack trace of exception 'xcancel' on all code paths 3 796
PreserveStackTrace Thrown exception does not preserve the stack trace of exception 'xjexl' on all code paths 3 800
UnusedAssignment The updated value of variable 'nc' is never used 3 2175

org/apache/commons/jexl3/internal/LongRange.java

Rule Violation Priority Line
LooseCoupling Avoid using implementation types like 'LongRange'; use the interface instead 3 160
LooseCoupling Avoid using implementation types like 'LongRange'; use the interface instead 3 226

org/apache/commons/jexl3/internal/TemplateDebugger.java

Rule Violation Priority Line
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 3 304322

org/apache/commons/jexl3/internal/TemplateEngine.java

Rule Violation Priority Line
EnumComparison Enums should be compared using == 3 102
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 3 9991139
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 3 1019
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 3 1036
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 3 1067
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 3 1078
AvoidReassigningLoopVariables Avoid reassigning the loop control variable 'column' 3 1121
LooseCoupling Avoid using implementation types like 'ArrayList'; use the interface instead 3 1201

org/apache/commons/jexl3/internal/TemplateScript.java

Rule Violation Priority Line
MethodReturnsInternalArray Returning 'exprs' may expose an internal array. 3 291

org/apache/commons/jexl3/internal/introspection/AbstractExecutor.java

Rule Violation Priority Line
AbstractClassWithoutAbstractMethod This abstract class does not have any abstract methods 3 31

org/apache/commons/jexl3/internal/introspection/MethodKey.java

Rule Violation Priority Line
MethodReturnsInternalArray Returning 'params' may expose an internal array. 3 769

org/apache/commons/jexl3/internal/introspection/Uberspect.java

Rule Violation Priority Line
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 3 337378
ExhaustiveSwitchHasDefault The switch block is exhaustive even without the default case 3 405436

org/apache/commons/jexl3/introspection/JexlUberspect.java

Rule Violation Priority Line
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 88
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 121
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 179

org/apache/commons/jexl3/parser/JexlNode.java

Rule Violation Priority Line
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 40

org/apache/commons/jexl3/parser/JexlParser.java

Rule Violation Priority Line
LooseCoupling Avoid using implementation types like 'SwitchSet'; use the interface instead 3 381

org/apache/commons/jexl3/parser/JexlScriptParser.java

Rule Violation Priority Line
ImplicitFunctionalInterface Annotate this interface with @FunctionalInterface or with @SuppressWarnings("PMD.ImplicitFunctionalInterface") to clarify your intent. 2 29

Suppressed Violations

Filename Rule message Suppression type Reason
org/apache/commons/jexl3/parser/TokenMgrException.java Avoid unused private fields such as 'state'. @suppresswarnings