diff options
Diffstat (limited to 'src/core/lombok')
-rw-r--r-- | src/core/lombok/eclipse/handlers/EclipseSingularsRecipes.java | 2 | ||||
-rw-r--r-- | src/core/lombok/eclipse/handlers/HandleSuperBuilder.java | 9 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/core/lombok/eclipse/handlers/EclipseSingularsRecipes.java b/src/core/lombok/eclipse/handlers/EclipseSingularsRecipes.java index ac4e5c7b..e24cd5b5 100644 --- a/src/core/lombok/eclipse/handlers/EclipseSingularsRecipes.java +++ b/src/core/lombok/eclipse/handlers/EclipseSingularsRecipes.java @@ -229,7 +229,7 @@ public class EclipseSingularsRecipes { * control over the return type and value, use * {@link #generateMethods(SingularData, boolean, EclipseNode, boolean, Supplier, Supplier)}. */ - public void generateMethods(SingularData data, boolean deprecate, EclipseNode builderType, boolean fluent, boolean chain) { + public void generateMethods(SingularData data, boolean deprecate, final EclipseNode builderType, boolean fluent, final boolean chain) { // TODO: Make these lambdas when switching to a source level >= 1.8. Supplier<TypeReference> returnType = new Supplier<TypeReference>() { @Override public TypeReference get() { diff --git a/src/core/lombok/eclipse/handlers/HandleSuperBuilder.java b/src/core/lombok/eclipse/handlers/HandleSuperBuilder.java index fa069939..a473a084 100644 --- a/src/core/lombok/eclipse/handlers/HandleSuperBuilder.java +++ b/src/core/lombok/eclipse/handlers/HandleSuperBuilder.java @@ -368,7 +368,12 @@ public class HandleSuperBuilder extends EclipseAnnotationHandler<SuperBuilder> { } private TypeReference[] getTypeParametersFrom(TypeReference typeRef) { - TypeReference[][] typeArgss = typeRef.getTypeArguments(); + TypeReference[][] typeArgss = null; + if (typeRef instanceof ParameterizedQualifiedTypeReference) { + typeArgss = ((ParameterizedQualifiedTypeReference)typeRef).typeArguments; + } else if (typeRef instanceof ParameterizedSingleTypeReference) { + typeArgss = new TypeReference[][] {((ParameterizedSingleTypeReference)typeRef).typeArguments}; + } TypeReference[] typeArgs = new TypeReference[0]; if (typeArgss != null && typeArgss.length > 0) { typeArgs = typeArgss[typeArgss.length - 1]; @@ -609,7 +614,7 @@ public class HandleSuperBuilder extends EclipseAnnotationHandler<SuperBuilder> { } } - private void makeSetterMethodsForBuilder(EclipseNode builderType, BuilderFieldData bfd, EclipseNode sourceNode, String builderGenericName) { + private void makeSetterMethodsForBuilder(EclipseNode builderType, BuilderFieldData bfd, EclipseNode sourceNode, final String builderGenericName) { boolean deprecate = isFieldDeprecated(bfd.originalFieldNode); // TODO: Make these lambdas when switching to a source level >= 1.8. |