aboutsummaryrefslogtreecommitdiff
path: root/src/lombok/eclipse/handlers/HandleGetter.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/lombok/eclipse/handlers/HandleGetter.java')
-rw-r--r--src/lombok/eclipse/handlers/HandleGetter.java15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/lombok/eclipse/handlers/HandleGetter.java b/src/lombok/eclipse/handlers/HandleGetter.java
index b69a43f3..0bdde361 100644
--- a/src/lombok/eclipse/handlers/HandleGetter.java
+++ b/src/lombok/eclipse/handlers/HandleGetter.java
@@ -62,23 +62,16 @@ public class HandleGetter implements EclipseAnnotationHandler<Getter> {
* be a warning if its already there. The default access level is used.
*/
public void generateGetterForField(Node fieldNode, ASTNode pos) {
- AccessLevel level = AccessLevel.PUBLIC;
- Node errorNode = fieldNode;
- boolean whineIfExists = false;
-
for ( Node child : fieldNode.down() ) {
if ( child.getKind() == Kind.ANNOTATION ) {
if ( Eclipse.annotationTypeMatches(Getter.class, child) ) {
- level = Eclipse.createAnnotation(Getter.class, child).getInstance().value();
- errorNode = child;
- pos = child.get();
- whineIfExists = true;
- break;
+ //The annotation will make it happen, so we can skip it.
+ return;
}
}
}
- createGetterForField(level, fieldNode, errorNode, pos, whineIfExists);
+ createGetterForField(AccessLevel.PUBLIC, fieldNode, fieldNode, pos, false);
}
public boolean handle(AnnotationValues<Getter> annotation, Annotation ast, Node annotationNode) {
@@ -96,7 +89,7 @@ public class HandleGetter implements EclipseAnnotationHandler<Getter> {
FieldDeclaration field = (FieldDeclaration) fieldNode.get();
TypeReference fieldType = Eclipse.copyType(field.type);
String getterName = TransformationsUtil.toGetterName(
- new String(field.name), nameEquals(fieldType.getTypeName(), "boolean"));
+ new String(field.name), nameEquals(fieldType.getTypeName(), "boolean") && fieldType.dimensions() == 0);
int modifier = toModifier(level) | (field.modifiers & ClassFileConstants.AccStatic);