diff options
author | Reinier Zwitserloot <reinier@zwitserloot.com> | 2014-06-01 09:50:18 +0200 |
---|---|---|
committer | Reinier Zwitserloot <reinier@zwitserloot.com> | 2014-06-01 09:50:18 +0200 |
commit | fe25bb153326d657ad98d9bd55c801d8815f39b3 (patch) | |
tree | 5a7034ab5afe1249b086a9a25557381bf7222748 /src/core/lombok/eclipse/handlers/HandleWither.java | |
parent | 6159508d40ed2a79bae98ea4a7f24edc4af36d88 (diff) | |
download | lombok-fe25bb153326d657ad98d9bd55c801d8815f39b3.tar.gz lombok-fe25bb153326d657ad98d9bd55c801d8815f39b3.tar.bz2 lombok-fe25bb153326d657ad98d9bd55c801d8815f39b3.zip |
Revert "Remove a wrong test for copyAnnotations returning empty array."
While Maaartinus' thoughts are obviously correct (far better to use an empty array to convey 'this list-like construct has 0 items in it right now', vs. a null pointer),
eclipse actually uses null-as-empty almost everywhere, and a lot of eclipse code will simply break if you don't do it right.
This reverts commit 842a4759165c5cd05aae63da3921ee11a3641a4b.
Diffstat (limited to 'src/core/lombok/eclipse/handlers/HandleWither.java')
-rw-r--r-- | src/core/lombok/eclipse/handlers/HandleWither.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/core/lombok/eclipse/handlers/HandleWither.java b/src/core/lombok/eclipse/handlers/HandleWither.java index 851ab75b..8b038676 100644 --- a/src/core/lombok/eclipse/handlers/HandleWither.java +++ b/src/core/lombok/eclipse/handlers/HandleWither.java @@ -227,8 +227,10 @@ public class HandleWither extends EclipseAnnotationHandler<Wither> { if (isFieldDeprecated(fieldNode)) { deprecated = new Annotation[] { generateDeprecatedAnnotation(source) }; } - method.annotations = copyAnnotations(source, onMethod.toArray(new Annotation[0]), deprecated); - + Annotation[] copiedAnnotations = copyAnnotations(source, onMethod.toArray(new Annotation[0]), deprecated); + if (copiedAnnotations.length != 0) { + method.annotations = copiedAnnotations; + } Argument param = new Argument(field.name, p, copyType(field.type, source), Modifier.FINAL); param.sourceStart = pS; param.sourceEnd = pE; method.arguments = new Argument[] { param }; @@ -281,7 +283,8 @@ public class HandleWither extends EclipseAnnotationHandler<Wither> { method.statements = statements.toArray(new Statement[0]); - param.annotations = copyAnnotations(source, nonNulls, nullables, onParam.toArray(new Annotation[0])); + Annotation[] copiedAnnotationsParam = copyAnnotations(source, nonNulls, nullables, onParam.toArray(new Annotation[0])); + if (copiedAnnotationsParam.length != 0) param.annotations = copiedAnnotationsParam; method.traverse(new SetGeneratedByVisitor(source), parent.scope); return method; |