PMD Results

The following document contains the results of PMD 4.2.5.

Files

net/sourceforge/jeuclid/converter/FreeHepConverter.java

ViolationLine
New exception is thrown in catch block, original stack trace may be lost83
New exception is thrown in catch block, original stack trace may be lost85
New exception is thrown in catch block, original stack trace may be lost87
New exception is thrown in catch block, original stack trace may be lost89

net/sourceforge/jeuclid/converter/ImageIODetector.java

ViolationLine
Avoid instantiating new objects inside loops71 - 72

net/sourceforge/jeuclid/elements/AbstractJEuclidElement.java

ViolationLine
An empty method in an abstract class should be abstract instead706 - 708
An empty method in an abstract class should be abstract instead711 - 714
An empty method in an abstract class should be abstract instead866 - 868

net/sourceforge/jeuclid/elements/generic/MathImpl.java

ViolationLine
Avoid instantiation through private constructors from outside of the constructor's class.176

net/sourceforge/jeuclid/elements/presentation/general/Menclose.java

ViolationLine
This class has too many methods, consider refactoring it.60 - 471

net/sourceforge/jeuclid/elements/presentation/script/Mmultiscripts.java

ViolationLine
This class has too many methods, consider refactoring it.47 - 453

net/sourceforge/jeuclid/elements/presentation/script/ScriptSupport.java

ViolationLine
Avoid really long parameter lists.102 - 106

net/sourceforge/jeuclid/elements/presentation/table/Mtable.java

ViolationLine
This class has a bunch of public methods and attributes19 - 1016
This class has too many methods, consider refactoring it.64 - 1016
The class 'VAlign' has a Cyclomatic Complexity of 4 (Highest = 10).193 - 290
The method 'parseString' has a Cyclomatic Complexity of 10.241 - 281
Avoid instantiating new objects inside loops769 - 770
Avoid instantiating new objects inside loops792 - 794
Avoid instantiating new objects inside loops862

net/sourceforge/jeuclid/elements/presentation/token/Mo.java

ViolationLine
The class 'Mo' has a Cyclomatic Complexity of 2 (Highest = 12).67 - 734
This class has too many methods, consider refactoring it.68 - 734
The method 'layoutStage2' has a Cyclomatic Complexity of 12.574 - 652

net/sourceforge/jeuclid/elements/support/operatordict/OperatorDictionary2.java

ViolationLine
Avoid instantiating new objects inside loops212
Avoid instantiating new objects inside loops218 - 219

net/sourceforge/jeuclid/elements/support/operatordict/OperatorDictionary3.java

ViolationLine
The class 'OperatorDictionary3' has a Cyclomatic Complexity of 3 (Highest = 10).53 - 354
Document empty constructor102 - 103
The method 'intToSpace' has a Cyclomatic Complexity of 10.316 - 352

net/sourceforge/jeuclid/elements/support/text/CharacterMapping.java

ViolationLine
This class has too many methods, consider refactoring it.49 - 427
The class 'CharacterMapping' has a Cyclomatic Complexity of 4 (Highest = 10).49 - 427
This call to String.startsWith can be rewritten using String.charAt(0)145
Use block level rather than method level synchronization235 - 260
The method 'composeUnicodeChar' has a Cyclomatic Complexity of 10.273 - 306
Avoid instantiating new objects inside loops403 - 404
Parameter 'codepoint' is not assigned and could be declared final423

net/sourceforge/jeuclid/elements/support/text/MultiAttributedCharacterIterator.java

ViolationLine
clone() method should be implemented only if implementing Cloneable interface49 - 52
clone() method should throw CloneNotSupportedException50 - 52

net/sourceforge/jeuclid/elements/support/text/StringUtil.java

ViolationLine
Avoid instantiating new objects inside loops97 - 98

net/sourceforge/jeuclid/font/DefaultFontFactory.java

ViolationLine
Avoid instantiating new objects inside loops73 - 74

net/sourceforge/jeuclid/layout/JEuclidView.java

ViolationLine
Avoid instantiation through private constructors from outside of the constructor's class.414

net/sourceforge/jeuclid/layout/LayoutInfoImpl.java

ViolationLine
Too many fields27 - 238

net/sourceforge/jeuclid/swing/JMathComponent.java

ViolationLine
The String literal "unchecked" appears 6 times in this file; the first occurrence is on line 187187
Use equals() to compare object references.367

net/sourceforge/jeuclid/swing/JMathComponentMouseListener.java

ViolationLine
Substitute calls to size() == 0 (or size() != 0) with calls to isEmpty()61
Document empty method74 - 75
Document empty method83 - 84
Document empty method92 - 93
Document empty method101 - 102

net/sourceforge/jeuclid/swing/MathComponentUI.java

ViolationLine
Local variable 'jc' could be declared final75
Local variable 'ref' could be declared final77
Local variable 'jEuclidView' could be declared final93
Parameter 'jc' is not assigned and could be declared final116
Parameter 'jEuclidView' is not assigned and could be declared final117
Parameter 'c' is not assigned and could be declared final140
Parameter 'c' is not assigned and could be declared final149
Parameter 'c' is not assigned and could be declared final164
Local variable 'jEuclidView' could be declared final226
Parameter 'jEuclidView' is not assigned and could be declared final231
Parameter 'mathComponent' is not assigned and could be declared final272
Local variable 'jEuclidView' could be declared final274 - 275
Parameter 'jMathComponent' is not assigned and could be declared final287
Parameter 'g2d' is not assigned and could be declared final292