The purpose of AccessNode is to denote a node which can have declaration modifiers, eg abstract, final, public, etc. Some nodes implement it just to get the "final" modifier:
ASTLambdaExpression implements it for nothing, due to an implementation error: AbstractMethodLikeNode extends AbstractJavaAccessNode...
- I think all of these should stop implementing the interface in 7.0.0. We could have a separate base class for nodes that can be final, or implement it ad-hoc with a boolean since FormalParameter is a TypeNode and so we'd have to have several base classes. The amount of duplication seems acceptable
- The setters should be removed from the interface. They're only used by the parser, and could be package-private
The purpose of AccessNode is to denote a node which can have declaration modifiers, eg
abstract,final,public, etc. Some nodes implement it just to get the "final" modifier:ASTLambdaExpression implements it for nothing, due to an implementation error: AbstractMethodLikeNode extends AbstractJavaAccessNode...