-
Interfaces Interface Description net.sourceforge.pmd.lang.java.ast.CanSuppressWarnings This interface will be removed, the AST should not know about rules.net.sourceforge.pmd.lang.java.ast.Dimensionable Will be removed with 7.0.0. See https://github.com/pmd/pmd/issues/997 and https://github.com/pmd/pmd/issues/910net.sourceforge.pmd.lang.java.ast.JavaParserConstants net.sourceforge.pmd.lang.java.ast.JavaParserControllessVisitor Visitor decorators are deprecated because they lead to fragile code.net.sourceforge.pmd.lang.java.ast.JavaParserTreeConstants net.sourceforge.pmd.lang.java.ast.JavaQualifiableNode net.sourceforge.pmd.lang.java.ast.MethodLikeNode Lambda expressions should not be grouped with other kinds of method declarations, they have nothing in common. Giving them a qualified name is hacky and compiler-implementation-dependent. Ultimately this supertype is not useful and can go away.net.sourceforge.pmd.lang.java.typeresolution.typedefinition.TypeDefinition
-
Enums Enum Description net.sourceforge.pmd.lang.java.ast.ASTAnyTypeDeclaration.TypeKind This is not useful, not adapted to the problem, and does not scale to changes in the Java language. The only use of this is to get a name, this can be replaced withPrettyPrintingUtil
.Besides, the real problem is that
- enums are also classes
- annotations are also interfaces
- there are also anonymous classes in PMD 7.0, so this cannot even be used to downcast safely
ASTAnyTypeBodyDeclaration.DeclarationKind
net.sourceforge.pmd.lang.java.ast.MethodLikeNode.MethodLikeKind Same reason as forASTAnyTypeDeclaration.TypeKind
net.sourceforge.pmd.lang.java.typeresolution.typeinference.InferenceRuleType
-
Exceptions Exceptions Description net.sourceforge.pmd.lang.java.ast.ParseException Use superclassParseException