From 85759a1949fe862a2baa2cb836d0bbea5349db66 Mon Sep 17 00:00:00 2001 From: Emil Lundberg Date: Thu, 10 Jan 2019 02:53:47 +0100 Subject: Detangle key/value param creation in JavacJavaUtilMapSingularizer.generateSingularMethod --- .../javac/handlers/singulars/JavacJavaUtilMapSingularizer.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/core/lombok/javac/handlers/singulars/JavacJavaUtilMapSingularizer.java b/src/core/lombok/javac/handlers/singulars/JavacJavaUtilMapSingularizer.java index c7483be6..9373512a 100644 --- a/src/core/lombok/javac/handlers/singulars/JavacJavaUtilMapSingularizer.java +++ b/src/core/lombok/javac/handlers/singulars/JavacJavaUtilMapSingularizer.java @@ -149,15 +149,17 @@ public class JavacJavaUtilMapSingularizer extends JavacJavaUtilSingularizer { Name name = data.getSingularName(); if (!fluent) name = builderType.toName(HandlerUtil.buildAccessorName("put", name.toString())); + JCExpression paramTypeKey = cloneParamType(0, maker, data.getTypeArgs(), builderType, source); - JCExpression paramTypeValue = cloneParamType(1, maker, data.getTypeArgs(), builderType, source); List typeUseAnnsKey = getTypeUseAnnotations(paramTypeKey); - List typeUseAnnsValue = getTypeUseAnnotations(paramTypeValue); paramTypeKey = removeTypeUseAnnotations(paramTypeKey); - paramTypeValue = removeTypeUseAnnotations(paramTypeValue); JCModifiers paramModsKey = typeUseAnnsKey.isEmpty() ? maker.Modifiers(paramFlags) : maker.Modifiers(paramFlags, typeUseAnnsKey); - JCModifiers paramModsValue = typeUseAnnsValue.isEmpty() ? maker.Modifiers(paramFlags) : maker.Modifiers(paramFlags, typeUseAnnsValue); JCVariableDecl paramKey = maker.VarDef(paramModsKey, keyName, paramTypeKey, null); + + JCExpression paramTypeValue = cloneParamType(1, maker, data.getTypeArgs(), builderType, source); + List typeUseAnnsValue = getTypeUseAnnotations(paramTypeValue); + paramTypeValue = removeTypeUseAnnotations(paramTypeValue); + JCModifiers paramModsValue = typeUseAnnsValue.isEmpty() ? maker.Modifiers(paramFlags) : maker.Modifiers(paramFlags, typeUseAnnsValue); JCVariableDecl paramValue = maker.VarDef(paramModsValue, valueName, paramTypeValue, null); finishAndInjectMethod(maker, returnType, builderType, source, mods, body, name, List.of(paramKey, paramValue)); } -- cgit