##### Project Documentation

- About groovy
- Project Info
- Project Reports
  - Project License
  - PMD Report
  - Metrics
  - Source Xref
  - Test Xref
  - Unit Tests
  - FAQs
- Development Process

## PMD Results

The following document contains the results of PMD.

## Summary

Files | Errors
--- | ---
68 | 441

## Files

Files | Violations
--- | ---
groovy/lang/Closure.java | 4
groovy/lang/GroovyClassLoader.java | 2
groovy/lang/GroovyCodeSource.java | 1
groovy/lang/GroovyShell.java | 3
groovy/lang/MetaClassImpl.java | 6
groovy/lang/MetaMethod.java | 1
groovy/lang/SpreadMap.java | 3
groovy/servlet/ServletBinding.java | 1
groovy/servlet/TemplateServlet.java | 1
groovy/sql/Sql.java | 2
groovy/swing/SwingBuilder.java | 2
groovy/text/SimpleTemplateEngine.java | 1
groovy/ui/GroovyMain.java | 1
groovy/ui/InteractiveShell.java | 2
groovy/util/AntBuilder.java | 1
groovy/util/CharsetToolkit.java | 2
groovy/util/Expando.java | 1
groovy/util/GroovyMBean.java | 9
groovy/util/GroovyScriptEngine.java | 3
groovy/util/GroovyTestCase.java | 1
groovy/util/slurpersupport/GPathResult.java | 1
groovy/xml/NamespaceBuilderSupport.java | 1
org/codehaus/groovy/ant/Groovy.java | 2
org/codehaus/groovy/antlr/AntlrASTProcessSnippets.java | 1
org/codehaus/groovy/antlr/AntlrParserPlugin.java | 2
org/codehaus/groovy/antlr/LexerFrame.java | 3
org/codehaus/groovy/antlr/java/Groovifier.java | 1
org/codehaus/groovy/antlr/java/Java2GroovyConverter.java | 1
org/codehaus/groovy/antlr/java/Java2GroovyMain.java | 3
org/codehaus/groovy/antlr/java/JavaLexer.java | 81
org/codehaus/groovy/antlr/java/JavaRecognizer.java | 33
org/codehaus/groovy/antlr/java/JavaTokenTypes.java | 4
org/codehaus/groovy/antlr/parser/GroovyLexer.java | 95
org/codehaus/groovy/antlr/parser/GroovyRecognizer.java | 81
org/codehaus/groovy/antlr/parser/GroovyTokenTypes.java | 4
org/codehaus/groovy/antlr/treewalker/CompositeVisitor.java | 1
org/codehaus/groovy/ast/ClassHelper.java | 2
org/codehaus/groovy/ast/ClassNode.java | 1
org/codehaus/groovy/ast/CodeVisitorSupport.java | 1
org/codehaus/groovy/ast/FieldNode.java | 1
org/codehaus/groovy/ast/PropertyNode.java | 1
org/codehaus/groovy/classgen/AsmClassGenerator.java | 12
org/codehaus/groovy/classgen/BytecodeHelper.java | 2
org/codehaus/groovy/classgen/ClassCompletionVerifier.java | 1
org/codehaus/groovy/classgen/CompileStack.java | 1
org/codehaus/groovy/classgen/DummyClassGenerator.java | 1
org/codehaus/groovy/classgen/VariableScopeVisitor.java | 3
org/codehaus/groovy/classgen/VerifierCodeVisitor.java | 1
org/codehaus/groovy/control/CompilationUnit.java | 8
org/codehaus/groovy/control/CompilerConfiguration.java | 4
org/codehaus/groovy/control/Janitor.java | 1
org/codehaus/groovy/control/ParserPluginFactory.java | 1
org/codehaus/groovy/control/ResolveVisitor.java | 3
org/codehaus/groovy/control/SourceUnit.java | 1
org/codehaus/groovy/control/io/AbstractReaderSource.java | 2
org/codehaus/groovy/runtime/DefaultGroovyMethods.java | 5
org/codehaus/groovy/runtime/InvokerHelper.java | 6
org/codehaus/groovy/runtime/MetaClassHelper.java | 2
org/codehaus/groovy/runtime/NullObject.java | 1
org/codehaus/groovy/runtime/ScriptBytecodeAdapter.java | 7
org/codehaus/groovy/runtime/typehandling/ClassDistance.java | 1
org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation.java | 1
org/codehaus/groovy/syntax/ASTHelper.java | 2
org/codehaus/groovy/syntax/CSTNode.java | 3
org/codehaus/groovy/syntax/ParserException.java | 2
org/codehaus/groovy/syntax/Reduction.java | 1
org/codehaus/groovy/syntax/RuntimeParserException.java | 1
org/codehaus/groovy/tools/RootLoader.java | 1

### groovy/lang/Closure.java

Violation | Line
--- | ---
Avoid unused private fields such as 'noParameters' | 68
Avoid unused private fields such as 'emptyArrayParameter' | 70
Avoid empty catch blocks | 139
Avoid empty catch blocks | 165

### groovy/lang/GroovyClassLoader.java

Violation | Line
--- | ---
Avoid empty catch blocks | 199
Avoid empty catch blocks | 825

### groovy/lang/GroovyCodeSource.java

Violation | Line
--- | ---
Avoid empty catch blocks | 144

### groovy/lang/GroovyShell.java

Violation | Line
--- | ---
Avoid empty catch blocks | 162
Avoid empty catch blocks | 358
Avoid empty catch blocks | 361

### groovy/lang/MetaClassImpl.java

Violation | Line
--- | ---
Avoid unused local variables such as 'privates' | 178
Avoid empty catch blocks | 570
Avoid unused formal parameters such as 'setAccessible' | 751
Avoid unused local variables such as 'usesProxy' | 1328
Avoid unused local variables such as 'gcl' | 1511
Avoid unused formal parameters such as 'object' | 1701

### groovy/lang/MetaMethod.java

Violation | Line
--- | ---
Avoid unused private fields such as 'log' | 57

### groovy/lang/SpreadMap.java

Violation | Line
--- | ---
This for loop could be simplified to a while loop | 113
This for loop could be simplified to a while loop | 128
This for loop could be simplified to a while loop | 148

### groovy/servlet/ServletBinding.java

Violation | Line
--- | ---
Avoid unused private fields such as 'request' | 94

### groovy/servlet/TemplateServlet.java

Violation | Line
--- | ---
Avoid empty catch blocks | 280

### groovy/sql/Sql.java

Violation | Line
--- | ---
Avoid unused local variables such as 'hasResultSet' | 654
Avoid unused local variables such as 'hasResultSet' | 757

### groovy/swing/SwingBuilder.java

Violation | Line
--- | ---
Avoid empty catch blocks | 190
Avoid empty 'if' statements | 228

### groovy/text/SimpleTemplateEngine.java

Violation | Line
--- | ---
Avoid unused local variables such as 'start' | 143

### groovy/ui/GroovyMain.java

Violation | Line
--- | ---
Avoid unused private methods such as 'getLoader' | 467

### groovy/ui/InteractiveShell.java

Violation | Line
--- | ---
Avoid unused private fields such as 'in' | 83
Avoid empty catch blocks | 276

### groovy/util/AntBuilder.java

Violation | Line
--- | ---
Avoid unused private fields such as 'addTaskParamTypes' | 79

### groovy/util/CharsetToolkit.java

Violation | Line
--- | ---
Avoid empty catch blocks | 102
Avoid empty catch blocks | 410

### groovy/util/Expando.java

Violation | Line
--- | ---
Avoid empty catch blocks | 110

### groovy/util/GroovyMBean.java

Violation | Line
--- | ---
Avoid empty catch blocks | 208
Avoid empty finally blocks | 210
Avoid empty catch blocks | 234
Avoid empty catch blocks | 255
Avoid empty finally blocks | 257
Avoid empty catch blocks | 301
Avoid empty catch blocks | 320
Avoid empty catch blocks | 340
Avoid empty catch blocks | 363

### groovy/util/GroovyScriptEngine.java

Violation | Line
--- | ---
Avoid unused private fields such as 'scriptClass' | 99
Avoid unused private fields such as 'lastModified' | 100
Avoid unused private fields such as 'dependencies' | 101

### groovy/util/GroovyTestCase.java

Violation | Line
--- | ---
Avoid empty catch blocks | 371

### groovy/util/slurpersupport/GPathResult.java

Violation | Line
--- | ---
Ensure you override both equals() and hashCode() | 247

### groovy/xml/NamespaceBuilderSupport.java

Violation | Line
--- | ---
Avoid unused private fields such as 'builder' | 61

### org/codehaus/groovy/ant/Groovy.java

Violation | Line
--- | ---
Avoid unused local variables such as 'srcDir' | 232
Avoid unused local variables such as 'srcFiles' | 234

### org/codehaus/groovy/antlr/AntlrASTProcessSnippets.java

Violation | Line
--- | ---
Avoid unused private fields such as 'sourceBuffer' | 33

### org/codehaus/groovy/antlr/AntlrParserPlugin.java

Violation | Line
--- | ---
Avoid empty 'if' statements | 1678
Avoid unused local variables such as 'leftexp' | 1685

### org/codehaus/groovy/antlr/LexerFrame.java

Violation | Line
--- | ---
Avoid empty catch blocks | 76
Avoid empty catch blocks | 133
Avoid empty catch blocks | 172

### org/codehaus/groovy/antlr/java/Groovifier.java

Violation | Line
--- | ---
Avoid unused private fields such as 'tokenNames' | 8

### org/codehaus/groovy/antlr/java/Java2GroovyConverter.java

Violation | Line
--- | ---
Avoid unused private fields such as 'tokenNames' | 8

### org/codehaus/groovy/antlr/java/Java2GroovyMain.java

Violation | Line
--- | ---
No need to import a type that's in the same package | 34
No need to import a type that's in the same package | 35
No need to import a type that's in the same package | 36

### org/codehaus/groovy/antlr/java/JavaLexer.java

Violation | Line
--- | ---
Avoid duplicate imports such as 'java.io.InputStream' | 12
Avoid unused imports such as 'ANTLRException' | 18
Avoid duplicate imports such as 'java.io.Reader' | 19
Avoid duplicate imports such as 'java.util.Hashtable' | 20
Avoid unused imports such as 'CharScanner' | 21
Avoid duplicate imports such as 'antlr.InputBuffer' | 22
Avoid unused imports such as 'CommonToken' | 26
Avoid unused imports such as 'MismatchedCharException' | 29
Avoid duplicate imports such as 'antlr.LexerSharedInputState' | 32
Avoid unused imports such as 'SemanticException' | 34
Avoid unused local variables such as 'quoteType' | 69
Avoid unused local variables such as 'theRetToken' | 183
Avoid unused local variables such as '_token' | 186
Avoid unused local variables such as '_saveIndex' | 477
Avoid unused local variables such as '_saveIndex' | 490
Avoid unused local variables such as '_saveIndex' | 503
Avoid unused local variables such as '_saveIndex' | 516
Avoid unused local variables such as '_saveIndex' | 529
Avoid unused local variables such as '_saveIndex' | 542
Avoid unused local variables such as '_saveIndex' | 555
Avoid unused local variables such as '_saveIndex' | 568
Avoid unused local variables such as '_saveIndex' | 581
Avoid unused local variables such as '_saveIndex' | 594
Avoid unused local variables such as '_saveIndex' | 607
Avoid unused local variables such as '_saveIndex' | 620
Avoid unused local variables such as '_saveIndex' | 633
Avoid unused local variables such as '_saveIndex' | 646
Avoid unused local variables such as '_saveIndex' | 659
Avoid unused local variables such as '_saveIndex' | 672
Avoid unused local variables such as '_saveIndex' | 685
Avoid unused local variables such as '_saveIndex' | 698
Avoid unused local variables such as '_saveIndex' | 711
Avoid unused local variables such as '_saveIndex' | 724
Avoid unused local variables such as '_saveIndex' | 737
Avoid unused local variables such as '_saveIndex' | 750
Avoid unused local variables such as '_saveIndex' | 763
Avoid unused local variables such as '_saveIndex' | 776
Avoid unused local variables such as '_saveIndex' | 789
Avoid unused local variables such as '_saveIndex' | 802
Avoid unused local variables such as '_saveIndex' | 815
Avoid unused local variables such as '_saveIndex' | 828
Avoid unused local variables such as '_saveIndex' | 841
Avoid unused local variables such as '_saveIndex' | 854
Avoid unused local variables such as '_saveIndex' | 867
Avoid unused local variables such as '_saveIndex' | 880
Avoid unused local variables such as '_saveIndex' | 893
Avoid unused local variables such as '_saveIndex' | 906
Avoid unused local variables such as '_saveIndex' | 919
Avoid unused local variables such as '_saveIndex' | 932
Avoid unused local variables such as '_saveIndex' | 945
Avoid unused local variables such as '_saveIndex' | 958
Avoid unused local variables such as '_saveIndex' | 971
Avoid unused local variables such as '_saveIndex' | 984
Avoid unused local variables such as '_saveIndex' | 997
Avoid unused local variables such as '_saveIndex' | 1010
Avoid unused local variables such as '_saveIndex' | 1023
Avoid unused local variables such as '_saveIndex' | 1036
Avoid unused local variables such as '_saveIndex' | 1049
Avoid unused local variables such as '_saveIndex' | 1062
Avoid unused local variables such as '_saveIndex' | 1127
Avoid empty 'if' statements | 1158
Avoid unused local variables such as '_saveIndex' | 1183
Avoid unused local variables such as '_saveIndex' | 1236
Avoid unused local variables such as '_saveIndex' | 1297
Avoid empty 'if' statements | 1374
Avoid empty 'if' statements | 1382
Avoid empty 'if' statements | 1398
Avoid unused local variables such as '_saveIndex' | 1423
Avoid unused local variables such as '_saveIndex' | 1462
Avoid unused local variables such as '_saveIndex' | 1475
Avoid unused local variables such as '_saveIndex' | 1590
Avoid empty 'if' statements | 1629
Avoid empty 'if' statements | 1641
Avoid empty 'if' statements | 1807
Avoid empty 'if' statements | 1889
Avoid empty 'if' statements | 1901
Avoid empty 'if' statements | 1918
Avoid empty 'if' statements | 1950
Avoid unused local variables such as '_saveIndex' | 1971
Avoid unused local variables such as '_saveIndex' | 2039
Avoid unused local variables such as '_saveIndex' | 2077

### org/codehaus/groovy/antlr/java/JavaRecognizer.java

Violation | Line
--- | ---
Avoid unused imports such as 'TokenStreamIOException' | 14
Avoid unused imports such as 'ANTLRException' | 15
Avoid unused imports such as 'LLkParser' | 16
Avoid unused imports such as 'MismatchedTokenException' | 21
Avoid duplicate imports such as 'java.util.Hashtable' | 26
Avoid unused imports such as 'Hashtable' | 26
Avoid unused private fields such as 'dummyVariableToforceClassLoaderToFindASTClass' | 223
Avoid unused private fields such as 'sourceBuffer' | 228
Avoid empty 'if' statements | 324
Avoid unused local variables such as 'first' | 367
Avoid unused local variables such as 'isStatic' | 436
Avoid unused local variables such as 'tmp20_AST' | 855
Avoid empty 'if' statements | 1279
Avoid empty 'if' statements | 1486
Avoid unused local variables such as 'i_AST' | 2436
Avoid unused local variables such as 'e_AST' | 2561
Avoid empty 'if' statements | 2904
Avoid unused local variables such as 'tmp93_AST' | 3098
Avoid unused local variables such as 'tmp94_AST' | 3121
Avoid unused local variables such as 'tmp99_AST' | 3291
Avoid unused local variables such as 'tmp100_AST' | 3306
Avoid unused local variables such as 'tmp104_AST' | 3411
Avoid unused local variables such as 'tmp105_AST' | 3427
Avoid unused local variables such as 'tmp115_AST' | 3848
Avoid unused local variables such as 'tmp116_AST' | 3871
Avoid empty 'if' statements | 4002
Avoid empty 'if' statements | 4140
Avoid empty 'if' statements | 4276
Avoid empty 'if' statements | 5052
Avoid unused local variables such as 'p_AST' | 5094
Avoid empty 'if' statements | 6645
Avoid empty 'if' statements | 7054
Avoid empty 'if' statements | 7106

### org/codehaus/groovy/antlr/java/JavaTokenTypes.java

Violation | Line
--- | ---
Avoid unused imports such as 'InputStream' | 7
Avoid unused imports such as 'Reader' | 8
Avoid unused imports such as 'InputBuffer' | 9
Avoid unused imports such as 'LexerSharedInputState' | 10

### org/codehaus/groovy/antlr/parser/GroovyLexer.java

Violation | Line
--- | ---
Avoid duplicate imports such as 'java.io.InputStream' | 11
Avoid unused imports such as 'ANTLRException' | 17
Avoid duplicate imports such as 'java.io.Reader' | 18
Avoid duplicate imports such as 'java.util.Hashtable' | 19
Avoid unused imports such as 'CharScanner' | 20
Avoid duplicate imports such as 'antlr.InputBuffer' | 21
Avoid unused imports such as 'CommonToken' | 25
Avoid duplicate imports such as 'antlr.LexerSharedInputState' | 31
Avoid empty catch blocks | 273
Avoid unused local variables such as 'theRetToken' | 364
Avoid unused local variables such as '_token' | 367
Avoid unused local variables such as '_saveIndex' | 704
Avoid unused local variables such as '_saveIndex' | 717
Avoid unused local variables such as '_saveIndex' | 733
Avoid unused local variables such as '_saveIndex' | 749
Avoid unused local variables such as '_saveIndex' | 765
Avoid unused local variables such as '_saveIndex' | 781
Avoid unused local variables such as '_saveIndex' | 797
Avoid unused local variables such as '_saveIndex' | 813
Avoid unused local variables such as '_saveIndex' | 826
Avoid unused local variables such as '_saveIndex' | 839
Avoid unused local variables such as '_saveIndex' | 852
Avoid unused local variables such as '_saveIndex' | 865
Avoid unused local variables such as '_saveIndex' | 878
Avoid unused local variables such as '_saveIndex' | 891
Avoid unused local variables such as '_saveIndex' | 904
Avoid unused local variables such as '_saveIndex' | 917
Avoid unused local variables such as '_saveIndex' | 930
Avoid unused local variables such as '_saveIndex' | 943
Avoid unused local variables such as '_saveIndex' | 956
Avoid unused local variables such as '_saveIndex' | 969
Avoid unused local variables such as '_saveIndex' | 982
Avoid unused local variables such as '_saveIndex' | 995
Avoid unused local variables such as '_saveIndex' | 1008
Avoid unused local variables such as '_saveIndex' | 1021
Avoid unused local variables such as '_saveIndex' | 1034
Avoid unused local variables such as '_saveIndex' | 1047
Avoid unused local variables such as '_saveIndex' | 1060
Avoid unused local variables such as '_saveIndex' | 1073
Avoid unused local variables such as '_saveIndex' | 1086
Avoid unused local variables such as '_saveIndex' | 1099
Avoid unused local variables such as '_saveIndex' | 1112
Avoid unused local variables such as '_saveIndex' | 1125
Avoid unused local variables such as '_saveIndex' | 1138
Avoid unused local variables such as '_saveIndex' | 1151
Avoid unused local variables such as '_saveIndex' | 1164
Avoid unused local variables such as '_saveIndex' | 1177
Avoid unused local variables such as '_saveIndex' | 1190
Avoid unused local variables such as '_saveIndex' | 1203
Avoid unused local variables such as '_saveIndex' | 1216
Avoid unused local variables such as '_saveIndex' | 1229
Avoid unused local variables such as '_saveIndex' | 1242
Avoid unused local variables such as '_saveIndex' | 1255
Avoid unused local variables such as '_saveIndex' | 1268
Avoid unused local variables such as '_saveIndex' | 1281
Avoid unused local variables such as '_saveIndex' | 1294
Avoid unused local variables such as '_saveIndex' | 1307
Avoid unused local variables such as '_saveIndex' | 1320
Avoid unused local variables such as '_saveIndex' | 1333
Avoid unused local variables such as '_saveIndex' | 1346
Avoid unused local variables such as '_saveIndex' | 1359
Avoid unused local variables such as '_saveIndex' | 1372
Avoid unused local variables such as '_saveIndex' | 1385
Avoid unused local variables such as '_saveIndex' | 1398
Avoid unused local variables such as '_saveIndex' | 1411
Avoid unused local variables such as '_saveIndex' | 1424
Avoid unused local variables such as '_saveIndex' | 1437
Avoid unused local variables such as '_saveIndex' | 1450
Avoid unused local variables such as '_saveIndex' | 1463
Avoid unused local variables such as '_saveIndex' | 1476
Avoid unused local variables such as '_saveIndex' | 1489
Avoid unused local variables such as '_saveIndex' | 1569
Avoid empty 'if' statements | 1604
Avoid empty 'if' statements | 1609
Avoid unused local variables such as '_saveIndex' | 1630
Avoid unused local variables such as '_saveIndex' | 1660
Avoid unused local variables such as '_saveIndex' | 1714
Avoid unused local variables such as '_saveIndex' | 1934
Avoid empty 'if' statements | 2055
Avoid empty 'if' statements | 2063
Avoid empty 'if' statements | 2082
Avoid unused local variables such as '_saveIndex' | 2125
Avoid unused local variables such as '_saveIndex' | 2470
Avoid unused local variables such as '_saveIndex' | 2509
Avoid unused local variables such as '_saveIndex' | 2522
Avoid unused local variables such as '_saveIndex' | 2587
Avoid unused local variables such as '_saveIndex' | 2663
Avoid unused local variables such as '_saveIndex' | 2676
Avoid empty 'if' statements | 2821
Avoid empty 'if' statements | 2970
Avoid empty 'if' statements | 3059
Avoid unused local variables such as '_saveIndex' | 3073
Avoid unused local variables such as '_saveIndex' | 3141
Avoid unused local variables such as '_saveIndex' | 3179
Avoid unused local variables such as '_saveIndex' | 3207

### org/codehaus/groovy/antlr/parser/GroovyRecognizer.java

Violation | Line
--- | ---
Avoid unused imports such as 'TokenStreamIOException' | 13
Avoid unused imports such as 'ANTLRException' | 14
Avoid unused imports such as 'LLkParser' | 15
Avoid unused imports such as 'MismatchedTokenException' | 20
Avoid duplicate imports such as 'java.util.Hashtable' | 25
Avoid unused imports such as 'Hashtable' | 25
Avoid unused private fields such as 'dummyVariableToforceClassLoaderToFindASTClass' | 225
Avoid unused private fields such as 'sourceBuffer' | 233
Avoid empty catch blocks | 281
Avoid empty catch blocks | 290
Avoid unused private fields such as 'ANTLR_LOOP_EXIT' | 369
Avoid unused local variables such as 'currentAST' | 710
Avoid empty 'if' statements | 717
Avoid empty 'if' statements | 872
Avoid unused local variables such as 'currentAST' | 1113
Avoid unused local variables such as 'isStatic' | 1430
Avoid unused local variables such as 'tmp44_AST' | 1780
Avoid empty 'if' statements | 1843
Avoid empty 'if' statements | 2058
Avoid empty 'if' statements | 2090
Avoid empty 'if' statements | 2154
Avoid unused local variables such as 'currentAST' | 2318
Avoid unused local variables such as 'tmp52_AST' | 2345
Avoid unused local variables such as 'tmp53_AST' | 2348
Avoid unused local variables such as 'tmp54_AST' | 2384
Avoid unused local variables such as 'tmp55_AST' | 2388
Avoid unused local variables such as 'tmp56_AST' | 2398
Avoid unused local variables such as 'currentAST' | 2663
Avoid unused local variables such as 'tmp80_AST' | 2666
Avoid unused local variables such as 'tmp81_AST' | 2673
Avoid unused local variables such as 'tmp82_AST' | 2676
Avoid unused local variables such as 'tmp83_AST' | 2686
Avoid unused local variables such as 'currentAST' | 2696
Avoid unused local variables such as 'currentAST' | 2724
Avoid unused local variables such as 'id_AST' | 2727
Avoid empty 'if' statements | 2753
Avoid unused local variables such as 'currentAST' | 2776
Avoid unused local variables such as 'tmp89_AST' | 2799
Avoid empty 'if' statements | 3222
Avoid empty 'if' statements | 3443
Avoid unused local variables such as 'i_AST' | 4190
Avoid unused local variables such as 'e_AST' | 4378
Avoid empty 'if' statements | 4862
Avoid empty 'if' statements | 5882
Avoid empty 'if' statements | 6134
Avoid unused local variables such as 'currentAST' | 6362
Avoid empty 'if' statements | 6390
Avoid empty 'if' statements | 6473
Avoid unused local variables such as 'currentAST' | 6672
Avoid unused local variables such as 'tmp160_AST' | 6677
Avoid empty 'if' statements | 6834
Avoid empty 'if' statements | 6860
Avoid empty 'if' statements | 7125
Avoid empty 'if' statements | 7266
Avoid empty 'if' statements | 7379
Avoid empty 'if' statements | 8042
Avoid unused local variables such as 'currentAST' | 8781
Avoid unused local variables such as 'tmp212_AST' | 8790
Avoid unused local variables such as 'tmp213_AST' | 8798
Avoid unused local variables such as 'tmp214_AST' | 8805
Avoid unused local variables such as 'tmp215_AST' | 8812
Avoid unused local variables such as 'tmp216_AST' | 8819
Avoid unused local variables such as 'tmp217_AST' | 8826
Avoid unused local variables such as 'tmp218_AST' | 8833
Avoid unused local variables such as 'first' | 9068
Avoid empty 'if' statements | 10841
Avoid empty 'if' statements | 11024
Avoid empty 'if' statements | 11439
Avoid unused local variables such as 'currentAST' | 11464
Avoid unused local variables such as 'tmp301_AST' | 11471
Avoid unused local variables such as 'tmp302_AST' | 11515
Avoid unused local variables such as 'tmp303_AST' | 11534
Avoid unused local variables such as 'currentAST' | 11694
Avoid unused local variables such as 'tmp310_AST' | 11700
Avoid unused local variables such as 'tmp311_AST' | 11704
Avoid unused local variables such as 'tmp312_AST' | 11711
Avoid unused local variables such as 'tmp313_AST' | 11715
Avoid unused local variables such as 'tmp314_AST' | 11722
Avoid unused local variables such as 'tmp315_AST' | 11726
Avoid unused local variables such as 'tmp316_AST' | 11733
Avoid unused local variables such as 'tmp317_AST' | 11737

### org/codehaus/groovy/antlr/parser/GroovyTokenTypes.java

Violation | Line
--- | ---
Avoid unused imports such as 'InputStream' | 6
Avoid unused imports such as 'Reader' | 7
Avoid unused imports such as 'InputBuffer' | 8
Avoid unused imports such as 'LexerSharedInputState' | 9

### org/codehaus/groovy/antlr/treewalker/CompositeVisitor.java

Violation | Line
--- | ---
Avoid unused private fields such as 'stack' | 41

### org/codehaus/groovy/ast/ClassHelper.java

Violation | Line
--- | ---
Avoid unused private fields such as 'names' | 74
Avoid unused private fields such as 'numbers' | 139

### org/codehaus/groovy/ast/ClassNode.java

Violation | Line
--- | ---
Ensure you override both equals() and hashCode() | 538

### org/codehaus/groovy/ast/CodeVisitorSupport.java

Violation | Line
--- | ---
Avoid unused local variables such as 'expr3' | 293

### org/codehaus/groovy/ast/FieldNode.java

Violation | Line
--- | ---
Avoid unused private fields such as 'closureShare' | 68

### org/codehaus/groovy/ast/PropertyNode.java

Violation | Line
--- | ---
Avoid unused private fields such as 'closureShare' | 64

### org/codehaus/groovy/classgen/AsmClassGenerator.java

Violation | Line
--- | ---
Avoid unused private fields such as 'log' | 150
Avoid unused private fields such as 'MARK_START' | 261
Avoid unused private fields such as 'lineNumber' | 264
Avoid unused private fields such as 'columnNumber' | 265
Avoid unused private fields such as 'dummyGen' | 268
Avoid unused formal parameters such as 'call' | 1779
Avoid empty 'if' statements | 1827
Avoid empty 'if' statements | 1949
Avoid empty 'if' statements | 1974
Avoid unused local variables such as 'scope' | 2109
Avoid empty switch statements | 2206
Do not use 'if' statements that are always true or always false | 2659

### org/codehaus/groovy/classgen/BytecodeHelper.java

Violation | Line
--- | ---
Avoid empty 'if' statements | 494
Avoid unused local variables such as 'type' | 526

### org/codehaus/groovy/classgen/ClassCompletionVerifier.java

Violation | Line
--- | ---
Avoid unused local variables such as 'methodName' | 69

### org/codehaus/groovy/classgen/CompileStack.java

Violation | Line
--- | ---
Do not use 'if' statements that are always true or always false | 309

### org/codehaus/groovy/classgen/DummyClassGenerator.java

Violation | Line
--- | ---
Avoid unused private fields such as 'sourceFile' | 59

### org/codehaus/groovy/classgen/VariableScopeVisitor.java

Violation | Line
--- | ---
Avoid unused local variables such as 'methodName' | 208
Avoid unused local variables such as 'name' | 228
Avoid unused local variables such as 'dummyStart' | 262

### org/codehaus/groovy/classgen/VerifierCodeVisitor.java

Violation | Line
--- | ---
Avoid unused private fields such as 'verifier' | 73

### org/codehaus/groovy/control/CompilationUnit.java

Violation | Line
--- | ---
Avoid unused formal parameters such as 'classLoader' | 231
Avoid unused formal parameters such as 'configuration' | 231
Avoid unused local variables such as 'failures' | 618
Avoid empty catch blocks | 647
Avoid unused local variables such as 'start' | 916
Avoid empty catch blocks | 951
Avoid unused local variables such as 'failures' | 982
Avoid empty catch blocks | 994

### org/codehaus/groovy/control/CompilerConfiguration.java

Violation | Line
--- | ---
Avoid empty catch blocks | 161
Avoid empty catch blocks | 166
Avoid empty catch blocks | 180
Avoid empty catch blocks | 540

### org/codehaus/groovy/control/Janitor.java

Violation | Line
--- | ---
Avoid empty catch blocks | 80

### org/codehaus/groovy/control/ParserPluginFactory.java

Violation | Line
--- | ---
Avoid empty catch blocks | 47

### org/codehaus/groovy/control/ResolveVisitor.java

Violation | Line
--- | ---
Avoid unused local variables such as 'name' | 225
Avoid empty catch blocks | 322
Avoid unused local variables such as 'ce' | 689

### org/codehaus/groovy/control/SourceUnit.java

Violation | Line
--- | ---
Avoid empty catch blocks | 294

### org/codehaus/groovy/control/io/AbstractReaderSource.java

Violation | Line
--- | ---
Avoid empty catch blocks | 128
Avoid empty catch blocks | 174

### org/codehaus/groovy/runtime/DefaultGroovyMethods.java

Violation | Line
--- | ---
Avoid empty catch blocks | 1109
Avoid unused local variables such as 'nlgnSort' | 2586
Avoid unused local variables such as 'nlgnSort' | 2613
Ensure you override both equals() and hashCode() | 2642
Avoid empty 'while' statements | 6699

### org/codehaus/groovy/runtime/InvokerHelper.java

Violation | Line
--- | ---
This for loop could be simplified to a while loop | 285
This for loop could be simplified to a while loop | 356
This for loop could be simplified to a while loop | 383
Avoid empty catch blocks | 461
Avoid empty catch blocks | 594
This for loop could be simplified to a while loop | 747

### org/codehaus/groovy/runtime/MetaClassHelper.java

Violation | Line
--- | ---
Avoid unused local variables such as 'oldbd' | 430
Avoid unused local variables such as 'numberOfVargs' | 687

### org/codehaus/groovy/runtime/NullObject.java

Violation | Line
--- | ---
Ensure you override both equals() and hashCode() | 109

### org/codehaus/groovy/runtime/ScriptBytecodeAdapter.java

Violation | Line
--- | ---
Avoid unused local variables such as 'answer' | 322
Avoid unused local variables such as 'answer' | 383
Avoid unused local variables such as 'answer' | 435
Avoid unused local variables such as 'answer' | 487
Avoid unused local variables such as 'answer' | 548
Avoid unused local variables such as 'answer' | 601
Avoid unused private methods such as 'getMetaClassObjectNotNull' | 823

### org/codehaus/groovy/runtime/typehandling/ClassDistance.java

Violation | Line
--- | ---
Avoid unused local variables such as 'bdec' | 60

### org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation.java

Violation | Line
--- | ---
Avoid empty catch blocks | 316

### org/codehaus/groovy/syntax/ASTHelper.java

Violation | Line
--- | ---
Avoid unused private fields such as 'EMPTY_STRING_ARRAY' | 41
Avoid unused private fields such as 'NOT_RESOLVED' | 59

### org/codehaus/groovy/syntax/CSTNode.java

Violation | Line
--- | ---
No need to import a type that's in the same package | 50
No need to import a type that's in the same package | 51
No need to import a type that's in the same package | 52

### org/codehaus/groovy/syntax/ParserException.java

Violation | Line
--- | ---
No need to import a type that's in the same package | 3
No need to import a type that's in the same package | 4

### org/codehaus/groovy/syntax/Reduction.java

Violation | Line
--- | ---
No need to import a type that's in the same package | 50

### org/codehaus/groovy/syntax/RuntimeParserException.java

Violation | Line
--- | ---
No need to import a type that's in the same package | 6

### org/codehaus/groovy/tools/RootLoader.java

Violation | Line
--- | ---
Avoid empty catch blocks | 144