aboutsummaryrefslogtreecommitdiff
path: root/test/transform
diff options
context:
space:
mode:
Diffstat (limited to 'test/transform')
-rw-r--r--test/transform/knownBroken/before/I1132RecursiveGenerics.java19
-rw-r--r--test/transform/knownBroken/before/I1302BuilderInInstanceInnerClass.java5
-rw-r--r--test/transform/resource/after-delombok/Accessors.java8
-rw-r--r--test/transform/resource/after-delombok/AccessorsConfiguration.java2
-rw-r--r--test/transform/resource/after-delombok/BuilderChainAndFluent.java31
-rw-r--r--test/transform/resource/after-delombok/BuilderComplex.java6
-rw-r--r--test/transform/resource/after-delombok/BuilderDefaults.java111
-rw-r--r--test/transform/resource/after-delombok/BuilderDefaultsGenerics.java79
-rw-r--r--test/transform/resource/after-delombok/BuilderDefaultsWarnings.java99
-rw-r--r--test/transform/resource/after-delombok/BuilderGenericMethod.java40
-rw-r--r--test/transform/resource/after-delombok/BuilderInstanceMethod.java53
-rw-r--r--test/transform/resource/after-delombok/BuilderSimple.java2
-rw-r--r--test/transform/resource/after-delombok/BuilderSingularGuavaListsSets.java140
-rw-r--r--test/transform/resource/after-delombok/BuilderSingularGuavaMaps.java94
-rw-r--r--test/transform/resource/after-delombok/BuilderSingularLists.java123
-rw-r--r--test/transform/resource/after-delombok/BuilderSingularMaps.java213
-rw-r--r--test/transform/resource/after-delombok/BuilderSingularNoAuto.java121
-rw-r--r--test/transform/resource/after-delombok/BuilderSingularRedirectToGuava.java93
-rw-r--r--test/transform/resource/after-delombok/BuilderSingularSets.java153
-rw-r--r--test/transform/resource/after-delombok/BuilderSingularWithPrefixes.java56
-rw-r--r--test/transform/resource/after-delombok/BuilderValueData.java109
-rw-r--r--test/transform/resource/after-delombok/BuilderWithAccessors.java15
-rw-r--r--test/transform/resource/after-delombok/BuilderWithDeprecated.java111
-rw-r--r--test/transform/resource/after-delombok/BuilderWithExistingBuilderClass.java6
-rw-r--r--test/transform/resource/after-delombok/BuilderWithRecursiveGenerics.java85
-rw-r--r--test/transform/resource/after-delombok/BuilderWithToBuilder.java185
-rw-r--r--test/transform/resource/after-delombok/BuilderWithTolerate.java40
-rw-r--r--test/transform/resource/after-delombok/ConflictingStaticConstructorNames.java6
-rw-r--r--test/transform/resource/after-delombok/Constructors.java22
-rw-r--r--test/transform/resource/after-delombok/ConstructorsConfiguration.java8
-rw-r--r--test/transform/resource/after-delombok/ConstructorsWithAccessors.java32
-rw-r--r--test/transform/resource/after-delombok/DataConfiguration.java10
-rw-r--r--test/transform/resource/after-delombok/DataExtended.java6
-rw-r--r--test/transform/resource/after-delombok/DataIgnore.java7
-rw-r--r--test/transform/resource/after-delombok/DataOnEnum.java2
-rw-r--r--test/transform/resource/after-delombok/DataOnLocalClass.java18
-rw-r--r--test/transform/resource/after-delombok/DataPlain.java32
-rw-r--r--test/transform/resource/after-delombok/DataWithGetter.java9
-rw-r--r--test/transform/resource/after-delombok/DataWithGetterNone.java9
-rw-r--r--test/transform/resource/after-delombok/DelegateOnGetter.java6
-rw-r--r--test/transform/resource/after-delombok/DelegateOnGetterNone.java2
-rw-r--r--test/transform/resource/after-delombok/DelegateOnMethods.java4
-rw-r--r--test/transform/resource/after-delombok/DelegateTypesAndExcludes.java6
-rw-r--r--test/transform/resource/after-delombok/DelegateWithDeprecated.java2
-rw-r--r--test/transform/resource/after-delombok/DelegateWithVarargs.java25
-rw-r--r--test/transform/resource/after-delombok/EncodingUsAscii.java9
-rw-r--r--test/transform/resource/after-delombok/EncodingUtf8.java8
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCode.java28
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCodeConfigKeys1.java46
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCodeConfigKeys2.java68
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCodeNestedShadow.java50
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCodeOfAndExclude.java42
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCodeWithExistingMethods.java9
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCodeWithGenericsOnInners.java28
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCodeWithOnParam.java10
-rw-r--r--test/transform/resource/after-delombok/EqualsAndHashCodeWithSomeExistingMethods.java8
-rw-r--r--test/transform/resource/after-delombok/ExtensionMethodPlain.java2
-rw-r--r--test/transform/resource/after-delombok/FieldDefaults.java4
-rw-r--r--test/transform/resource/after-delombok/FieldDefaultsNoop.java2
-rw-r--r--test/transform/resource/after-delombok/FieldDefaultsViaConfig.java11
-rw-r--r--test/transform/resource/after-delombok/FieldDefaultsViaConfigAndRequiredArgsConstructor.java7
-rw-r--r--test/transform/resource/after-delombok/GenerateSuppressFBWarnings.java9
-rw-r--r--test/transform/resource/after-delombok/GeneratedJavaxOff.java7
-rw-r--r--test/transform/resource/after-delombok/GeneratedJavaxOnLombokOn.java10
-rw-r--r--test/transform/resource/after-delombok/GeneratedOff.java7
-rw-r--r--test/transform/resource/after-delombok/GeneratedOffJavaxOn.java9
-rw-r--r--test/transform/resource/after-delombok/GeneratedOffLombokOn.java8
-rw-r--r--test/transform/resource/after-delombok/GetterAccessLevel.java2
-rw-r--r--test/transform/resource/after-delombok/GetterAlreadyExists.java2
-rw-r--r--test/transform/resource/after-delombok/GetterBoolean.java2
-rw-r--r--test/transform/resource/after-delombok/GetterDeprecated.java2
-rw-r--r--test/transform/resource/after-delombok/GetterEnum.java2
-rw-r--r--test/transform/resource/after-delombok/GetterLazy.java2
-rw-r--r--test/transform/resource/after-delombok/GetterLazyBoolean.java8
-rw-r--r--test/transform/resource/after-delombok/GetterLazyEahcToString.java16
-rw-r--r--test/transform/resource/after-delombok/GetterLazyInvalid.java2
-rw-r--r--test/transform/resource/after-delombok/GetterLazyNative.java20
-rw-r--r--test/transform/resource/after-delombok/GetterLazyTransient.java24
-rw-r--r--test/transform/resource/after-delombok/GetterNone.java2
-rw-r--r--test/transform/resource/after-delombok/GetterOnClass.java2
-rw-r--r--test/transform/resource/after-delombok/GetterOnMethodErrors.java2
-rw-r--r--test/transform/resource/after-delombok/GetterPlain.java2
-rw-r--r--test/transform/resource/after-delombok/GetterSetterJavadoc.java56
-rw-r--r--test/transform/resource/after-delombok/GetterWithDollar.java2
-rw-r--r--test/transform/resource/after-delombok/Helper.java19
-rw-r--r--test/transform/resource/after-delombok/InjectField.java7
-rw-r--r--test/transform/resource/after-delombok/InnerClass.java51
-rw-r--r--test/transform/resource/after-delombok/JavadocGenerally.java3
-rw-r--r--test/transform/resource/after-delombok/LoggerCommons.java2
-rw-r--r--test/transform/resource/after-delombok/LoggerConfig.java2
-rw-r--r--test/transform/resource/after-delombok/LoggerJBossLog.java19
-rw-r--r--test/transform/resource/after-delombok/LoggerJul.java2
-rw-r--r--test/transform/resource/after-delombok/LoggerLog4j.java2
-rw-r--r--test/transform/resource/after-delombok/LoggerLog4j2.java2
-rw-r--r--test/transform/resource/after-delombok/LoggerSlf4j.java2
-rw-r--r--test/transform/resource/after-delombok/LoggerSlf4jAlreadyExists.java2
-rw-r--r--test/transform/resource/after-delombok/LoggerSlf4jTypes.java4
-rw-r--r--test/transform/resource/after-delombok/LoggerXSlf4j.java2
-rw-r--r--test/transform/resource/after-delombok/MixGetterVal.java2
-rw-r--r--test/transform/resource/after-delombok/MultiFieldGetter.java2
-rw-r--r--test/transform/resource/after-delombok/NoArgsConstructorForce.java13
-rw-r--r--test/transform/resource/after-delombok/NonNullOnParameterAbstract.java2
-rw-r--r--test/transform/resource/after-delombok/NonNullOnParameterOfDefaultMethod.java10
-rw-r--r--test/transform/resource/after-delombok/NonNullPlain.java1
-rw-r--r--test/transform/resource/after-delombok/NonNullWithAlternateException.java2
-rw-r--r--test/transform/resource/after-delombok/NonNullWithSneakyThrows.java2
-rw-r--r--test/transform/resource/after-delombok/OnXJava7Style.java38
-rw-r--r--test/transform/resource/after-delombok/OnXJava8Style.java38
-rw-r--r--test/transform/resource/after-delombok/SetterAccessLevel.java2
-rw-r--r--test/transform/resource/after-delombok/SetterAlreadyExists.java2
-rw-r--r--test/transform/resource/after-delombok/SetterDeprecated.java2
-rw-r--r--test/transform/resource/after-delombok/SetterOnClass.java2
-rw-r--r--test/transform/resource/after-delombok/SetterPlain.java2
-rw-r--r--test/transform/resource/after-delombok/SetterWithDollar.java6
-rw-r--r--test/transform/resource/after-delombok/SneakyThrowsMultiple.java2
-rw-r--r--test/transform/resource/after-delombok/SneakyThrowsPlain.java2
-rw-r--r--test/transform/resource/after-delombok/SneakyThrowsSingle.java2
-rw-r--r--test/transform/resource/after-delombok/SynchronizedName.java2
-rw-r--r--test/transform/resource/after-delombok/SynchronizedNameNoSuchField.java2
-rw-r--r--test/transform/resource/after-delombok/SynchronizedNameStaticToInstanceRef.java2
-rw-r--r--test/transform/resource/after-delombok/SynchronizedPlain.java2
-rw-r--r--test/transform/resource/after-delombok/ToStringConfiguration.java2
-rw-r--r--test/transform/resource/after-delombok/ToStringInner.java2
-rw-r--r--test/transform/resource/after-delombok/ToStringPlain.java2
-rw-r--r--test/transform/resource/after-delombok/Tolerate.java9
-rw-r--r--test/transform/resource/after-delombok/UtilityClass.java43
-rw-r--r--test/transform/resource/after-delombok/UtilityClassErrors.java19
-rw-r--r--test/transform/resource/after-delombok/ValAnonymousSubclassWithGenerics.java18
-rw-r--r--test/transform/resource/after-delombok/ValComplex.java2
-rw-r--r--test/transform/resource/after-delombok/ValDefault.java2
-rw-r--r--test/transform/resource/after-delombok/ValErrors.java2
-rw-r--r--test/transform/resource/after-delombok/ValFinal.java5
-rw-r--r--test/transform/resource/after-delombok/ValInBasicFor.java2
-rw-r--r--test/transform/resource/after-delombok/ValInFor.java2
-rw-r--r--test/transform/resource/after-delombok/ValInLambda.java18
-rw-r--r--test/transform/resource/after-delombok/ValInMultiDeclaration.java2
-rw-r--r--test/transform/resource/after-delombok/ValLambda.java16
-rw-r--r--test/transform/resource/after-delombok/ValLessSimple.java2
-rw-r--r--test/transform/resource/after-delombok/ValLub.java2
-rw-r--r--test/transform/resource/after-delombok/ValNullInit.java5
-rw-r--r--test/transform/resource/after-delombok/ValRawType.java4
-rw-r--r--test/transform/resource/after-delombok/ValWeirdTypes.java8
-rw-r--r--test/transform/resource/after-delombok/ValWithLabel.java2
-rw-r--r--test/transform/resource/after-delombok/ValWithLocalClasses.java11
-rw-r--r--test/transform/resource/after-delombok/ValueCallSuper.java32
-rw-r--r--test/transform/resource/after-delombok/ValueExperimental.java46
-rw-r--r--test/transform/resource/after-delombok/ValuePlain.java15
-rw-r--r--test/transform/resource/after-delombok/ValueStaticField.java (renamed from test/transform/resource/after-delombok/ValueExperimentalStarImport.java)14
-rw-r--r--test/transform/resource/after-delombok/VarComplex.java20
-rw-r--r--test/transform/resource/after-delombok/VarInFor.java9
-rw-r--r--test/transform/resource/after-delombok/VarInForOld.java7
-rw-r--r--test/transform/resource/after-delombok/VarModifier.java7
-rw-r--r--test/transform/resource/after-delombok/VarNullInit.java6
-rw-r--r--test/transform/resource/after-delombok/VarWarning.java6
-rw-r--r--test/transform/resource/after-delombok/WithInnerAnnotation.java2
-rw-r--r--test/transform/resource/after-delombok/WitherAccessLevel.java2
-rw-r--r--test/transform/resource/after-delombok/WitherAlreadyExists.java2
-rw-r--r--test/transform/resource/after-delombok/WitherAndAllArgsConstructor.java3
-rw-r--r--test/transform/resource/after-delombok/WitherDeprecated.java2
-rw-r--r--test/transform/resource/after-delombok/WitherWithAbstract.java5
-rw-r--r--test/transform/resource/after-ecj/Accessors.java4
-rw-r--r--test/transform/resource/after-ecj/BuilderChainAndFluent.java25
-rw-r--r--test/transform/resource/after-ecj/BuilderComplex.java10
-rw-r--r--test/transform/resource/after-ecj/BuilderDefaults.java90
-rw-r--r--test/transform/resource/after-ecj/BuilderDefaultsGenerics.java57
-rw-r--r--test/transform/resource/after-ecj/BuilderDefaultsWarnings.java87
-rw-r--r--test/transform/resource/after-ecj/BuilderGenericMethod.java35
-rw-r--r--test/transform/resource/after-ecj/BuilderInstanceMethod.java43
-rw-r--r--test/transform/resource/after-ecj/BuilderSimple.java6
-rw-r--r--test/transform/resource/after-ecj/BuilderSingularGuavaListsSets.java125
-rw-r--r--test/transform/resource/after-ecj/BuilderSingularGuavaMaps.java83
-rw-r--r--test/transform/resource/after-ecj/BuilderSingularLists.java116
-rw-r--r--test/transform/resource/after-ecj/BuilderSingularMaps.java209
-rw-r--r--test/transform/resource/after-ecj/BuilderSingularNoAuto.java114
-rw-r--r--test/transform/resource/after-ecj/BuilderSingularRedirectToGuava.java83
-rw-r--r--test/transform/resource/after-ecj/BuilderSingularSets.java145
-rw-r--r--test/transform/resource/after-ecj/BuilderSingularWithPrefixes.java51
-rw-r--r--test/transform/resource/after-ecj/BuilderValueData.java90
-rw-r--r--test/transform/resource/after-ecj/BuilderWithAccessors.java10
-rw-r--r--test/transform/resource/after-ecj/BuilderWithDeprecated.java87
-rw-r--r--test/transform/resource/after-ecj/BuilderWithExistingBuilderClass.java6
-rw-r--r--test/transform/resource/after-ecj/BuilderWithRecursiveGenerics.java78
-rw-r--r--test/transform/resource/after-ecj/BuilderWithToBuilder.java155
-rw-r--r--test/transform/resource/after-ecj/BuilderWithTolerate.java34
-rw-r--r--test/transform/resource/after-ecj/ConflictingStaticConstructorNames.java2
-rw-r--r--test/transform/resource/after-ecj/Constructors.java26
-rw-r--r--test/transform/resource/after-ecj/ConstructorsConfiguration.java7
-rw-r--r--test/transform/resource/after-ecj/ConstructorsWithAccessors.java31
-rw-r--r--test/transform/resource/after-ecj/DataConfiguration.java8
-rw-r--r--test/transform/resource/after-ecj/DataExtended.java2
-rw-r--r--test/transform/resource/after-ecj/DataIgnore.java4
-rw-r--r--test/transform/resource/after-ecj/DataOnLocalClass.java10
-rw-r--r--test/transform/resource/after-ecj/DataPlain.java25
-rw-r--r--test/transform/resource/after-ecj/DataWithGetter.java6
-rw-r--r--test/transform/resource/after-ecj/DataWithGetterNone.java6
-rw-r--r--test/transform/resource/after-ecj/DelegateWithVarargs.java25
-rw-r--r--test/transform/resource/after-ecj/EncodingUsAscii.java1
-rw-r--r--test/transform/resource/after-ecj/EncodingUtf8.java1
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCode.java16
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCodeConfigKeys1.java49
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCodeConfigKeys2.java73
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCodeNestedShadow.java58
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCodeOfAndExclude.java46
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCodeWithExistingMethods.java5
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCodeWithGenericsOnInners.java32
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCodeWithOnParam.java6
-rw-r--r--test/transform/resource/after-ecj/EqualsAndHashCodeWithSomeExistingMethods.java4
-rw-r--r--test/transform/resource/after-ecj/FieldDefaults.java6
-rw-r--r--test/transform/resource/after-ecj/FieldDefaultsViaConfig.java15
-rw-r--r--test/transform/resource/after-ecj/FieldDefaultsViaConfigAndRequiredArgsConstructor.java7
-rw-r--r--test/transform/resource/after-ecj/GenerateSuppressFBWarnings.java9
-rw-r--r--test/transform/resource/after-ecj/GeneratedJavaxOff.java9
-rw-r--r--test/transform/resource/after-ecj/GeneratedJavaxOnLombokOn.java9
-rw-r--r--test/transform/resource/after-ecj/GeneratedOff.java9
-rw-r--r--test/transform/resource/after-ecj/GeneratedOffJavaxOn.java9
-rw-r--r--test/transform/resource/after-ecj/GeneratedOffLombokOn.java9
-rw-r--r--test/transform/resource/after-ecj/GetterLazyBoolean.java2
-rw-r--r--test/transform/resource/after-ecj/GetterLazyEahcToString.java6
-rw-r--r--test/transform/resource/after-ecj/GetterLazyTransient.java28
-rw-r--r--test/transform/resource/after-ecj/GetterSetterJavadoc.java28
-rw-r--r--test/transform/resource/after-ecj/Helper.java30
-rw-r--r--test/transform/resource/after-ecj/InnerClass.java56
-rw-r--r--test/transform/resource/after-ecj/LoggerJBossLog.java38
-rw-r--r--test/transform/resource/after-ecj/LoggerSlf4jOnNonType.java7
-rw-r--r--test/transform/resource/after-ecj/NoArgsConstructorForce.java12
-rw-r--r--test/transform/resource/after-ecj/NonNullOnParameterOfDefaultMethod.java10
-rw-r--r--test/transform/resource/after-ecj/NonNullPlain.java2
-rw-r--r--test/transform/resource/after-ecj/OnXJava7Style.java31
-rw-r--r--test/transform/resource/after-ecj/OnXJava7StyleOn8.java31
-rw-r--r--test/transform/resource/after-ecj/OnXJava8Style.java31
-rw-r--r--test/transform/resource/after-ecj/OnXJava8StyleOn7.java31
-rw-r--r--test/transform/resource/after-ecj/Tolerate.java2
-rw-r--r--test/transform/resource/after-ecj/UtilityClass.java66
-rw-r--r--test/transform/resource/after-ecj/UtilityClassErrors.java38
-rw-r--r--test/transform/resource/after-ecj/ValAnonymousSubclassWithGenerics.java28
-rw-r--r--test/transform/resource/after-ecj/ValFinal.java9
-rw-r--r--test/transform/resource/after-ecj/ValInLambda.java21
-rw-r--r--test/transform/resource/after-ecj/ValNullInit.java10
-rw-r--r--test/transform/resource/after-ecj/ValWithLocalClasses.java20
-rw-r--r--test/transform/resource/after-ecj/ValueCallSuper.java32
-rw-r--r--test/transform/resource/after-ecj/ValueExperimental.java39
-rw-r--r--test/transform/resource/after-ecj/ValuePlain.java16
-rw-r--r--test/transform/resource/after-ecj/ValueStaticField.java (renamed from test/transform/resource/after-ecj/ValueExperimentalStarImport.java)16
-rw-r--r--test/transform/resource/after-ecj/VarComplex.java26
-rw-r--r--test/transform/resource/after-ecj/VarInFor.java14
-rw-r--r--test/transform/resource/after-ecj/VarInForOld.java12
-rw-r--r--test/transform/resource/after-ecj/VarModifier.java12
-rw-r--r--test/transform/resource/after-ecj/VarNullInit.java9
-rw-r--r--test/transform/resource/after-ecj/VarWarning.java10
-rw-r--r--test/transform/resource/after-ecj/WitherAndAllArgsConstructor.java2
-rw-r--r--test/transform/resource/after-ecj/WitherWithAbstract.java7
-rw-r--r--test/transform/resource/before/BuilderChainAndFluent.java4
-rw-r--r--test/transform/resource/before/BuilderComplex.java2
-rw-r--r--test/transform/resource/before/BuilderDefaults.java9
-rw-r--r--test/transform/resource/before/BuilderDefaultsGenerics.java9
-rw-r--r--test/transform/resource/before/BuilderDefaultsWarnings.java18
-rw-r--r--test/transform/resource/before/BuilderGenericMethod.java11
-rw-r--r--test/transform/resource/before/BuilderInstanceMethod.java8
-rw-r--r--test/transform/resource/before/BuilderInvalidUse.java4
-rw-r--r--test/transform/resource/before/BuilderSimple.java2
-rw-r--r--test/transform/resource/before/BuilderSingularGuavaListsSets.java16
-rw-r--r--test/transform/resource/before/BuilderSingularGuavaMaps.java12
-rw-r--r--test/transform/resource/before/BuilderSingularLists.java11
-rw-r--r--test/transform/resource/before/BuilderSingularMaps.java15
-rw-r--r--test/transform/resource/before/BuilderSingularNoAuto.java11
-rw-r--r--test/transform/resource/before/BuilderSingularRedirectToGuava.java13
-rw-r--r--test/transform/resource/before/BuilderSingularSets.java12
-rw-r--r--test/transform/resource/before/BuilderSingularWithPrefixes.java7
-rw-r--r--test/transform/resource/before/BuilderValueData.java11
-rw-r--r--test/transform/resource/before/BuilderWithAccessors.java2
-rw-r--r--test/transform/resource/before/BuilderWithDeprecated.java11
-rw-r--r--test/transform/resource/before/BuilderWithExistingBuilderClass.java2
-rw-r--r--test/transform/resource/before/BuilderWithRecursiveGenerics.java13
-rw-r--r--test/transform/resource/before/BuilderWithToBuilder.java31
-rw-r--r--test/transform/resource/before/BuilderWithTolerate.java18
-rw-r--r--test/transform/resource/before/Constructors.java11
-rw-r--r--test/transform/resource/before/ConstructorsConfiguration.java4
-rw-r--r--test/transform/resource/before/ConstructorsWithAccessors.java8
-rw-r--r--test/transform/resource/before/DataConfiguration.java2
-rw-r--r--test/transform/resource/before/DelegateWithVarargs.java12
-rw-r--r--test/transform/resource/before/EncodingUsAscii.java5
-rw-r--r--test/transform/resource/before/EncodingUtf8.java5
-rw-r--r--test/transform/resource/before/EqualsAndHashCodeConfigKeys1.java9
-rw-r--r--test/transform/resource/before/EqualsAndHashCodeConfigKeys2.java11
-rw-r--r--test/transform/resource/before/EqualsAndHashCodeNestedShadow.java15
-rw-r--r--test/transform/resource/before/EqualsAndHashCodeOfAndExclude.java11
-rw-r--r--test/transform/resource/before/EqualsAndHashCodeWithGenericsOnInners.java6
-rw-r--r--test/transform/resource/before/EqualsAndHashCodeWithSomeExistingMethods.java1
-rw-r--r--test/transform/resource/before/FieldDefaults.java2
-rw-r--r--test/transform/resource/before/FieldDefaultsViaConfig.java16
-rw-r--r--test/transform/resource/before/FieldDefaultsViaConfigAndRequiredArgsConstructor.java5
-rw-r--r--test/transform/resource/before/GenerateSuppressFBWarnings.java5
-rw-r--r--test/transform/resource/before/GeneratedJavaxOff.java5
-rw-r--r--test/transform/resource/before/GeneratedJavaxOnLombokOn.java7
-rw-r--r--test/transform/resource/before/GeneratedOff.java5
-rw-r--r--test/transform/resource/before/GeneratedOffJavaxOn.java7
-rw-r--r--test/transform/resource/before/GeneratedOffLombokOn.java6
-rw-r--r--test/transform/resource/before/GetterLazyTransient.java10
-rw-r--r--test/transform/resource/before/GetterOnMethodErrors2.java1
-rw-r--r--test/transform/resource/before/GetterSetterJavadoc.java27
-rw-r--r--test/transform/resource/before/Helper.java22
-rw-r--r--test/transform/resource/before/InnerClass.java17
-rw-r--r--test/transform/resource/before/JavadocGenerally.java4
-rw-r--r--test/transform/resource/before/LoggerJBossLog.java20
-rw-r--r--test/transform/resource/before/NoArgsConstructorForce.java8
-rw-r--r--test/transform/resource/before/NonNullOnParameterOfDefaultMethod.java7
-rw-r--r--test/transform/resource/before/OnXJava7Style.java16
-rw-r--r--test/transform/resource/before/OnXJava7StyleOn8.java18
-rw-r--r--test/transform/resource/before/OnXJava8Style.java16
-rw-r--r--test/transform/resource/before/OnXJava8StyleOn7.java18
-rw-r--r--test/transform/resource/before/TestOperators.java1
-rw-r--r--test/transform/resource/before/TrickyTypeResolution2.java1
-rw-r--r--test/transform/resource/before/UtilityClass.java37
-rw-r--r--test/transform/resource/before/UtilityClassErrors.java22
-rw-r--r--test/transform/resource/before/ValAnonymousSubclassWithGenerics.java2
-rw-r--r--test/transform/resource/before/ValErrors.java1
-rw-r--r--test/transform/resource/before/ValFinal.java6
-rw-r--r--test/transform/resource/before/ValInBasicFor.java1
-rw-r--r--test/transform/resource/before/ValInLambda.java21
-rw-r--r--test/transform/resource/before/ValLambda.java4
-rw-r--r--test/transform/resource/before/ValNullInit.java7
-rw-r--r--test/transform/resource/before/ValWithLocalClasses.java12
-rw-r--r--test/transform/resource/before/ValueCallSuper.java7
-rw-r--r--test/transform/resource/before/ValueExperimental.java9
-rw-r--r--test/transform/resource/before/ValueExperimentalStarImport.java5
-rw-r--r--test/transform/resource/before/ValueStaticField.java5
-rw-r--r--test/transform/resource/before/VarComplex.java22
-rw-r--r--test/transform/resource/before/VarInFor.java11
-rw-r--r--test/transform/resource/before/VarInForOld.java9
-rw-r--r--test/transform/resource/before/VarInForOldMulti.java10
-rw-r--r--test/transform/resource/before/VarModifier.java10
-rw-r--r--test/transform/resource/before/VarNullInit.java7
-rw-r--r--test/transform/resource/before/VarWarning.java9
-rw-r--r--test/transform/resource/before/WithInnerAnnotation.java1
-rw-r--r--test/transform/resource/before/WitherWithAbstract.java3
-rw-r--r--test/transform/resource/messages-delombok/BuilderDefaultsWarnings.java.messages4
-rw-r--r--test/transform/resource/messages-delombok/BuilderSingularNoAuto.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/GetterLazyTransient.java.messages1
-rw-r--r--test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages8
-rw-r--r--test/transform/resource/messages-delombok/Helper.java.messages1
-rw-r--r--test/transform/resource/messages-delombok/NonNullOnParameterAbstract.java.messages1
-rw-r--r--test/transform/resource/messages-delombok/UtilityClassErrors.java.messages4
-rw-r--r--test/transform/resource/messages-delombok/ValErrors.java.messages4
-rw-r--r--test/transform/resource/messages-delombok/ValInBasicFor.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/VarInForOldMulti.java.messages1
-rw-r--r--test/transform/resource/messages-delombok/VarNullInit.java.messages1
-rw-r--r--test/transform/resource/messages-delombok/VarWarning.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/BuilderDefaultsWarnings.java.messages5
-rw-r--r--test/transform/resource/messages-ecj/BuilderSingularNoAuto.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/EqualsAndHashCodeWithSomeExistingMethods.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/GetterLazyTransient.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/GetterOnMethodErrors2.java.messages8
-rw-r--r--test/transform/resource/messages-ecj/Helper.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/NonNullOnParameterAbstract.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/UtilityClassErrors.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/ValAnonymousSubclassWithGenerics.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/ValErrors.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/ValInBasicFor.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/ValInTryWithResources.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/ValueExperimental.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/VarInForOldMulti.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/VarModifier.java.messages3
-rw-r--r--test/transform/resource/messages-ecj/VarNullInit.java.messages1
-rw-r--r--test/transform/resource/messages-ecj/VarWarning.java.messages1
-rw-r--r--test/transform/resource/messages-idempotent/NonNullOnParameterAbstract.java.messages1
-rw-r--r--test/transform/resource/messages-idempotent/NonNullPlain.java.messages4
-rw-r--r--test/transform/src/lombok/transform/TestLombokFilesIdempotent.java7
-rw-r--r--test/transform/src/lombok/transform/TestSourceFiles.java7
-rw-r--r--test/transform/src/lombok/transform/TestWithDelombok.java7
-rw-r--r--test/transform/src/lombok/transform/TestWithEcj.java7
371 files changed, 6728 insertions, 547 deletions
diff --git a/test/transform/knownBroken/before/I1132RecursiveGenerics.java b/test/transform/knownBroken/before/I1132RecursiveGenerics.java
new file mode 100644
index 00000000..781886a7
--- /dev/null
+++ b/test/transform/knownBroken/before/I1132RecursiveGenerics.java
@@ -0,0 +1,19 @@
+// Compile with javac, it'll think the T in the generated build() method isn't type compatible.
+// Yet, when you take the delomboked output (which delombok will give, but with errors), THAT does compile.
+
+public class I1132RecursiveGenerics {
+ public static class Recursive<T extends Recursive<T>> {}
+ public static final class Rec extends Recursive<Rec> {}
+
+ @lombok.Builder(builderClassName = "MethodBuilder")
+ public static <T extends Recursive<T>> T create() {
+ return null;
+ }
+
+ public static void main(String[] args) {
+ final MethodBuilder<Rec> builder = I1132RecursiveGenerics.builder();
+ final Rec rec = builder.build();
+// final Rec rec = I1132RecursiveGenerics.<Rec>builder().build();
+ }
+}
+
diff --git a/test/transform/knownBroken/before/I1302BuilderInInstanceInnerClass.java b/test/transform/knownBroken/before/I1302BuilderInInstanceInnerClass.java
new file mode 100644
index 00000000..cf37abc4
--- /dev/null
+++ b/test/transform/knownBroken/before/I1302BuilderInInstanceInnerClass.java
@@ -0,0 +1,5 @@
+public class I1302BuilderInInstanceInnerClass {
+ @lombok.Builder public class NonStaticInner {
+ private int test;
+ }
+}
diff --git a/test/transform/resource/after-delombok/Accessors.java b/test/transform/resource/after-delombok/Accessors.java
index 0d15fe43..2773a17b 100644
--- a/test/transform/resource/after-delombok/Accessors.java
+++ b/test/transform/resource/after-delombok/Accessors.java
@@ -70,8 +70,8 @@ class AccessorsPrefix3 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof AccessorsPrefix3)) return false;
- final AccessorsPrefix3 other = (AccessorsPrefix3)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final AccessorsPrefix3 other = (AccessorsPrefix3) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
final java.lang.Object this$fName = this.getName();
final java.lang.Object other$fName = other.getName();
if (this$fName == null ? other$fName != null : !this$fName.equals(other$fName)) return false;
@@ -87,7 +87,7 @@ class AccessorsPrefix3 {
final int PRIME = 59;
int result = 1;
final java.lang.Object $fName = this.getName();
- result = result * PRIME + ($fName == null ? 0 : $fName.hashCode());
+ result = result * PRIME + ($fName == null ? 43 : $fName.hashCode());
return result;
}
}
@@ -112,4 +112,4 @@ class AccessorsFluentStatic<T extends Number> {
public static void name(final String name) {
AccessorsFluentStatic.name = name;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/AccessorsConfiguration.java b/test/transform/resource/after-delombok/AccessorsConfiguration.java
index fd60b152..f6604970 100644
--- a/test/transform/resource/after-delombok/AccessorsConfiguration.java
+++ b/test/transform/resource/after-delombok/AccessorsConfiguration.java
@@ -23,4 +23,4 @@ class AccessorsConfiguration3 {
this.fFieldName = fFieldName;
return this;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/BuilderChainAndFluent.java b/test/transform/resource/after-delombok/BuilderChainAndFluent.java
deleted file mode 100644
index d4975bff..00000000
--- a/test/transform/resource/after-delombok/BuilderChainAndFluent.java
+++ /dev/null
@@ -1,31 +0,0 @@
-class BuilderChainAndFluent {
- private final int yes;
- @java.lang.SuppressWarnings("all")
- BuilderChainAndFluent(final int yes) {
- this.yes = yes;
- }
- @java.lang.SuppressWarnings("all")
- public static class BuilderChainAndFluentBuilder {
- private int yes;
- @java.lang.SuppressWarnings("all")
- BuilderChainAndFluentBuilder() {
- }
- @java.lang.SuppressWarnings("all")
- public void setYes(final int yes) {
- this.yes = yes;
- }
- @java.lang.SuppressWarnings("all")
- public BuilderChainAndFluent build() {
- return new BuilderChainAndFluent(yes);
- }
- @java.lang.Override
- @java.lang.SuppressWarnings("all")
- public java.lang.String toString() {
- return "BuilderChainAndFluent.BuilderChainAndFluentBuilder(yes=" + this.yes + ")";
- }
- }
- @java.lang.SuppressWarnings("all")
- public static BuilderChainAndFluentBuilder builder() {
- return new BuilderChainAndFluentBuilder();
- }
-} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/BuilderComplex.java b/test/transform/resource/after-delombok/BuilderComplex.java
index 3c97f92a..a89d7114 100644
--- a/test/transform/resource/after-delombok/BuilderComplex.java
+++ b/test/transform/resource/after-delombok/BuilderComplex.java
@@ -4,9 +4,13 @@ class BuilderComplex {
}
@java.lang.SuppressWarnings("all")
public static class VoidBuilder<T extends Number> {
+ @java.lang.SuppressWarnings("all")
private T number;
+ @java.lang.SuppressWarnings("all")
private int arg2;
+ @java.lang.SuppressWarnings("all")
private String arg3;
+ @java.lang.SuppressWarnings("all")
private BuilderComplex selfRef;
@java.lang.SuppressWarnings("all")
VoidBuilder() {
@@ -45,4 +49,4 @@ class BuilderComplex {
public static <T extends Number> VoidBuilder<T> builder() {
return new VoidBuilder<T>();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/BuilderDefaults.java b/test/transform/resource/after-delombok/BuilderDefaults.java
new file mode 100644
index 00000000..b916b725
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderDefaults.java
@@ -0,0 +1,111 @@
+public final class BuilderDefaults {
+ private final int x;
+ private final String name;
+ private final long z;
+ @java.lang.SuppressWarnings("all")
+ private static int $default$x() {
+ return 10;
+ }
+ @java.lang.SuppressWarnings("all")
+ private static long $default$z() {
+ return System.currentTimeMillis();
+ }
+ @java.lang.SuppressWarnings("all")
+ BuilderDefaults(final int x, final String name, final long z) {
+ this.x = x;
+ this.name = name;
+ this.z = z;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderDefaultsBuilder {
+ @java.lang.SuppressWarnings("all")
+ private boolean x$set;
+ @java.lang.SuppressWarnings("all")
+ private int x;
+ @java.lang.SuppressWarnings("all")
+ private String name;
+ @java.lang.SuppressWarnings("all")
+ private boolean z$set;
+ @java.lang.SuppressWarnings("all")
+ private long z;
+ @java.lang.SuppressWarnings("all")
+ BuilderDefaultsBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsBuilder x(final int x) {
+ this.x = x;
+ x$set = true;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsBuilder name(final String name) {
+ this.name = name;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsBuilder z(final long z) {
+ this.z = z;
+ z$set = true;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaults build() {
+ int x = this.x;
+ if (!x$set) x = BuilderDefaults.$default$x();
+ long z = this.z;
+ if (!z$set) z = BuilderDefaults.$default$z();
+ return new BuilderDefaults(x, name, z);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderDefaults.BuilderDefaultsBuilder(x=" + this.x + ", name=" + this.name + ", z=" + this.z + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderDefaultsBuilder builder() {
+ return new BuilderDefaultsBuilder();
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getX() {
+ return this.x;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getName() {
+ return this.name;
+ }
+ @java.lang.SuppressWarnings("all")
+ public long getZ() {
+ return this.z;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof BuilderDefaults)) return false;
+ final BuilderDefaults other = (BuilderDefaults) o;
+ if (this.getX() != other.getX()) return false;
+ final java.lang.Object this$name = this.getName();
+ final java.lang.Object other$name = other.getName();
+ if (this$name == null ? other$name != null : !this$name.equals(other$name)) return false;
+ if (this.getZ() != other.getZ()) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = result * PRIME + this.getX();
+ final java.lang.Object $name = this.getName();
+ result = result * PRIME + ($name == null ? 43 : $name.hashCode());
+ final long $z = this.getZ();
+ result = result * PRIME + (int) ($z >>> 32 ^ $z);
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderDefaults(x=" + this.getX() + ", name=" + this.getName() + ", z=" + this.getZ() + ")";
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderDefaultsGenerics.java b/test/transform/resource/after-delombok/BuilderDefaultsGenerics.java
new file mode 100644
index 00000000..b88a61be
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderDefaultsGenerics.java
@@ -0,0 +1,79 @@
+import java.util.*;
+public class BuilderDefaultsGenerics<N extends Number, T, R extends List<T>> {
+ private java.util.concurrent.Callable<N> callable;
+ private T tee;
+ private R arrr;
+ @java.lang.SuppressWarnings("all")
+ private static <N extends Number, T, R extends List<T>> java.util.concurrent.Callable<N> $default$callable() {
+ return null;
+ }
+ @java.lang.SuppressWarnings("all")
+ private static <N extends Number, T, R extends List<T>> T $default$tee() {
+ return null;
+ }
+ @java.lang.SuppressWarnings("all")
+ private static <N extends Number, T, R extends List<T>> R $default$arrr() {
+ return null;
+ }
+ @java.lang.SuppressWarnings("all")
+ BuilderDefaultsGenerics(final java.util.concurrent.Callable<N> callable, final T tee, final R arrr) {
+ this.callable = callable;
+ this.tee = tee;
+ this.arrr = arrr;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderDefaultsGenericsBuilder<N extends Number, T, R extends List<T>> {
+ @java.lang.SuppressWarnings("all")
+ private boolean callable$set;
+ @java.lang.SuppressWarnings("all")
+ private java.util.concurrent.Callable<N> callable;
+ @java.lang.SuppressWarnings("all")
+ private boolean tee$set;
+ @java.lang.SuppressWarnings("all")
+ private T tee;
+ @java.lang.SuppressWarnings("all")
+ private boolean arrr$set;
+ @java.lang.SuppressWarnings("all")
+ private R arrr;
+ @java.lang.SuppressWarnings("all")
+ BuilderDefaultsGenericsBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsGenericsBuilder<N, T, R> callable(final java.util.concurrent.Callable<N> callable) {
+ this.callable = callable;
+ callable$set = true;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsGenericsBuilder<N, T, R> tee(final T tee) {
+ this.tee = tee;
+ tee$set = true;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsGenericsBuilder<N, T, R> arrr(final R arrr) {
+ this.arrr = arrr;
+ arrr$set = true;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsGenerics<N, T, R> build() {
+ java.util.concurrent.Callable<N> callable = this.callable;
+ if (!callable$set) callable = BuilderDefaultsGenerics.<N, T, R>$default$callable();
+ T tee = this.tee;
+ if (!tee$set) tee = BuilderDefaultsGenerics.<N, T, R>$default$tee();
+ R arrr = this.arrr;
+ if (!arrr$set) arrr = BuilderDefaultsGenerics.<N, T, R>$default$arrr();
+ return new BuilderDefaultsGenerics<N, T, R>(callable, tee, arrr);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderDefaultsGenerics.BuilderDefaultsGenericsBuilder(callable=" + this.callable + ", tee=" + this.tee + ", arrr=" + this.arrr + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <N extends Number, T, R extends List<T>> BuilderDefaultsGenericsBuilder<N, T, R> builder() {
+ return new BuilderDefaultsGenericsBuilder<N, T, R>();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderDefaultsWarnings.java b/test/transform/resource/after-delombok/BuilderDefaultsWarnings.java
new file mode 100644
index 00000000..7e645dc1
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderDefaultsWarnings.java
@@ -0,0 +1,99 @@
+public class BuilderDefaultsWarnings {
+ long x = System.currentTimeMillis();
+ final int y = 5;
+ int z;
+ java.util.List<String> items;
+ @java.lang.SuppressWarnings("all")
+ BuilderDefaultsWarnings(final long x, final int z, final java.util.List<String> items) {
+ this.x = x;
+ this.z = z;
+ this.items = items;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderDefaultsWarningsBuilder {
+ @java.lang.SuppressWarnings("all")
+ private long x;
+ @java.lang.SuppressWarnings("all")
+ private int z;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<String> items;
+ @java.lang.SuppressWarnings("all")
+ BuilderDefaultsWarningsBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsWarningsBuilder x(final long x) {
+ this.x = x;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsWarningsBuilder z(final int z) {
+ this.z = z;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsWarningsBuilder item(final String item) {
+ if (this.items == null) this.items = new java.util.ArrayList<String>();
+ this.items.add(item);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsWarningsBuilder items(final java.util.Collection<? extends String> items) {
+ if (this.items == null) this.items = new java.util.ArrayList<String>();
+ this.items.addAll(items);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsWarningsBuilder clearItems() {
+ if (this.items != null) this.items.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderDefaultsWarnings build() {
+ java.util.List<String> items;
+ switch (this.items == null ? 0 : this.items.size()) {
+ case 0:
+ items = java.util.Collections.emptyList();
+ break;
+ case 1:
+ items = java.util.Collections.singletonList(this.items.get(0));
+ break;
+ default:
+ items = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.items));
+ }
+ return new BuilderDefaultsWarnings(x, z, items);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderDefaultsWarnings.BuilderDefaultsWarningsBuilder(x=" + this.x + ", z=" + this.z + ", items=" + this.items + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderDefaultsWarningsBuilder builder() {
+ return new BuilderDefaultsWarningsBuilder();
+ }
+}
+class NoBuilderButHasDefaults {
+ private final long z = 5;
+ public NoBuilderButHasDefaults() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class NoBuilderButHasDefaultsBuilder {
+ @java.lang.SuppressWarnings("all")
+ NoBuilderButHasDefaultsBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public NoBuilderButHasDefaults build() {
+ return new NoBuilderButHasDefaults();
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "NoBuilderButHasDefaults.NoBuilderButHasDefaultsBuilder()";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static NoBuilderButHasDefaultsBuilder builder() {
+ return new NoBuilderButHasDefaultsBuilder();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderGenericMethod.java b/test/transform/resource/after-delombok/BuilderGenericMethod.java
new file mode 100644
index 00000000..f70ae871
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderGenericMethod.java
@@ -0,0 +1,40 @@
+import java.util.List;
+import java.util.*;
+class BuilderGenericMethod<T> {
+ public <N extends Number> Map<N, T> foo(int a, long b) {
+ return null;
+ }
+ @java.lang.SuppressWarnings("all")
+ public class MapBuilder<N extends Number> {
+ @java.lang.SuppressWarnings("all")
+ private int a;
+ @java.lang.SuppressWarnings("all")
+ private long b;
+ @java.lang.SuppressWarnings("all")
+ MapBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public MapBuilder<N> a(final int a) {
+ this.a = a;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public MapBuilder<N> b(final long b) {
+ this.b = b;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public Map<N, T> build() {
+ return BuilderGenericMethod.this.<N>foo(a, b);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderGenericMethod.MapBuilder(a=" + this.a + ", b=" + this.b + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public <N extends Number> MapBuilder<N> builder() {
+ return new MapBuilder<N>();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderInstanceMethod.java b/test/transform/resource/after-delombok/BuilderInstanceMethod.java
new file mode 100644
index 00000000..12b76a8f
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderInstanceMethod.java
@@ -0,0 +1,53 @@
+import java.util.List;
+class BuilderInstanceMethod<T> {
+ public String create(int show, final int yes, List<T> also, int $andMe) {
+ return "" + show + yes + also + $andMe;
+ }
+ @java.lang.SuppressWarnings("all")
+ public class StringBuilder {
+ @java.lang.SuppressWarnings("all")
+ private int show;
+ @java.lang.SuppressWarnings("all")
+ private int yes;
+ @java.lang.SuppressWarnings("all")
+ private List<T> also;
+ @java.lang.SuppressWarnings("all")
+ private int $andMe;
+ @java.lang.SuppressWarnings("all")
+ StringBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public StringBuilder show(final int show) {
+ this.show = show;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public StringBuilder yes(final int yes) {
+ this.yes = yes;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public StringBuilder also(final List<T> also) {
+ this.also = also;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public StringBuilder $andMe(final int $andMe) {
+ this.$andMe = $andMe;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String build() {
+ return BuilderInstanceMethod.this.create(show, yes, also, $andMe);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderInstanceMethod.StringBuilder(show=" + this.show + ", yes=" + this.yes + ", also=" + this.also + ", $andMe=" + this.$andMe + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public StringBuilder builder() {
+ return new StringBuilder();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderSimple.java b/test/transform/resource/after-delombok/BuilderSimple.java
index 11c0e58c..e3821c9a 100644
--- a/test/transform/resource/after-delombok/BuilderSimple.java
+++ b/test/transform/resource/after-delombok/BuilderSimple.java
@@ -11,7 +11,9 @@ class BuilderSimple<T> {
}
@java.lang.SuppressWarnings("all")
public static class BuilderSimpleBuilder<T> {
+ @java.lang.SuppressWarnings("all")
private int yes;
+ @java.lang.SuppressWarnings("all")
private List<T> also;
@java.lang.SuppressWarnings("all")
BuilderSimpleBuilder() {
diff --git a/test/transform/resource/after-delombok/BuilderSingularGuavaListsSets.java b/test/transform/resource/after-delombok/BuilderSingularGuavaListsSets.java
new file mode 100644
index 00000000..cf90e883
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderSingularGuavaListsSets.java
@@ -0,0 +1,140 @@
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableCollection;
+import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.ImmutableSortedSet;
+import com.google.common.collect.ImmutableTable;
+class BuilderSingularGuavaListsSets<T> {
+ private ImmutableList<T> cards;
+ private ImmutableCollection<? extends Number> frogs;
+ @SuppressWarnings("all")
+ private ImmutableSet rawSet;
+ private ImmutableSortedSet<String> passes;
+ private ImmutableTable<? extends Number, ? extends Number, String> users;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularGuavaListsSets(final ImmutableList<T> cards, final ImmutableCollection<? extends Number> frogs, final ImmutableSet rawSet, final ImmutableSortedSet<String> passes, final ImmutableTable<? extends Number, ? extends Number, String> users) {
+ this.cards = cards;
+ this.frogs = frogs;
+ this.rawSet = rawSet;
+ this.passes = passes;
+ this.users = users;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderSingularGuavaListsSetsBuilder<T> {
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableList.Builder<T> cards;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableList.Builder<Number> frogs;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableSet.Builder<java.lang.Object> rawSet;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableSortedSet.Builder<String> passes;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableTable.Builder<Number, Number, String> users;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularGuavaListsSetsBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> card(final T card) {
+ if (this.cards == null) this.cards = com.google.common.collect.ImmutableList.builder();
+ this.cards.add(card);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> cards(final java.lang.Iterable<? extends T> cards) {
+ if (this.cards == null) this.cards = com.google.common.collect.ImmutableList.builder();
+ this.cards.addAll(cards);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> clearCards() {
+ this.cards = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> frog(final Number frog) {
+ if (this.frogs == null) this.frogs = com.google.common.collect.ImmutableList.builder();
+ this.frogs.add(frog);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> frogs(final java.lang.Iterable<? extends Number> frogs) {
+ if (this.frogs == null) this.frogs = com.google.common.collect.ImmutableList.builder();
+ this.frogs.addAll(frogs);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> clearFrogs() {
+ this.frogs = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> rawSet(final java.lang.Object rawSet) {
+ if (this.rawSet == null) this.rawSet = com.google.common.collect.ImmutableSet.builder();
+ this.rawSet.add(rawSet);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> rawSet(final java.lang.Iterable<?> rawSet) {
+ if (this.rawSet == null) this.rawSet = com.google.common.collect.ImmutableSet.builder();
+ this.rawSet.addAll(rawSet);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> clearRawSet() {
+ this.rawSet = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> pass(final String pass) {
+ if (this.passes == null) this.passes = com.google.common.collect.ImmutableSortedSet.naturalOrder();
+ this.passes.add(pass);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> passes(final java.lang.Iterable<? extends String> passes) {
+ if (this.passes == null) this.passes = com.google.common.collect.ImmutableSortedSet.naturalOrder();
+ this.passes.addAll(passes);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> clearPasses() {
+ this.passes = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> user(final Number rowKey, final Number columnKey, final String value) {
+ if (this.users == null) this.users = com.google.common.collect.ImmutableTable.builder();
+ this.users.put(rowKey, columnKey, value);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> users(final com.google.common.collect.Table<? extends Number, ? extends Number, ? extends String> users) {
+ if (this.users == null) this.users = com.google.common.collect.ImmutableTable.builder();
+ this.users.putAll(users);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSetsBuilder<T> clearUsers() {
+ this.users = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaListsSets<T> build() {
+ com.google.common.collect.ImmutableList<T> cards = this.cards == null ? com.google.common.collect.ImmutableList.<T>of() : this.cards.build();
+ com.google.common.collect.ImmutableCollection<Number> frogs = this.frogs == null ? com.google.common.collect.ImmutableList.<Number>of() : this.frogs.build();
+ com.google.common.collect.ImmutableSet<java.lang.Object> rawSet = this.rawSet == null ? com.google.common.collect.ImmutableSet.<java.lang.Object>of() : this.rawSet.build();
+ com.google.common.collect.ImmutableSortedSet<String> passes = this.passes == null ? com.google.common.collect.ImmutableSortedSet.<String>of() : this.passes.build();
+ com.google.common.collect.ImmutableTable<Number, Number, String> users = this.users == null ? com.google.common.collect.ImmutableTable.<Number, Number, String>of() : this.users.build();
+ return new BuilderSingularGuavaListsSets<T>(cards, frogs, rawSet, passes, users);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderSingularGuavaListsSets.BuilderSingularGuavaListsSetsBuilder(cards=" + this.cards + ", frogs=" + this.frogs + ", rawSet=" + this.rawSet + ", passes=" + this.passes + ", users=" + this.users + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <T> BuilderSingularGuavaListsSetsBuilder<T> builder() {
+ return new BuilderSingularGuavaListsSetsBuilder<T>();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderSingularGuavaMaps.java b/test/transform/resource/after-delombok/BuilderSingularGuavaMaps.java
new file mode 100644
index 00000000..e29c7e94
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderSingularGuavaMaps.java
@@ -0,0 +1,94 @@
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableBiMap;
+import com.google.common.collect.ImmutableSortedMap;
+class BuilderSingularGuavaMaps<K, V> {
+ private ImmutableMap<K, V> battleaxes;
+ private ImmutableSortedMap<Integer, ? extends V> vertices;
+ @SuppressWarnings("all")
+ private ImmutableBiMap rawMap;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularGuavaMaps(final ImmutableMap<K, V> battleaxes, final ImmutableSortedMap<Integer, ? extends V> vertices, final ImmutableBiMap rawMap) {
+ this.battleaxes = battleaxes;
+ this.vertices = vertices;
+ this.rawMap = rawMap;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderSingularGuavaMapsBuilder<K, V> {
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableMap.Builder<K, V> battleaxes;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableSortedMap.Builder<Integer, V> vertices;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableBiMap.Builder<java.lang.Object, java.lang.Object> rawMap;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularGuavaMapsBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> battleaxe(final K key, final V value) {
+ if (this.battleaxes == null) this.battleaxes = com.google.common.collect.ImmutableMap.builder();
+ this.battleaxes.put(key, value);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> battleaxes(final java.util.Map<? extends K, ? extends V> battleaxes) {
+ if (this.battleaxes == null) this.battleaxes = com.google.common.collect.ImmutableMap.builder();
+ this.battleaxes.putAll(battleaxes);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> clearBattleaxes() {
+ this.battleaxes = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> vertex(final Integer key, final V value) {
+ if (this.vertices == null) this.vertices = com.google.common.collect.ImmutableSortedMap.naturalOrder();
+ this.vertices.put(key, value);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> vertices(final java.util.Map<? extends Integer, ? extends V> vertices) {
+ if (this.vertices == null) this.vertices = com.google.common.collect.ImmutableSortedMap.naturalOrder();
+ this.vertices.putAll(vertices);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> clearVertices() {
+ this.vertices = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> rawMap(final java.lang.Object key, final java.lang.Object value) {
+ if (this.rawMap == null) this.rawMap = com.google.common.collect.ImmutableBiMap.builder();
+ this.rawMap.put(key, value);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> rawMap(final java.util.Map<?, ?> rawMap) {
+ if (this.rawMap == null) this.rawMap = com.google.common.collect.ImmutableBiMap.builder();
+ this.rawMap.putAll(rawMap);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMapsBuilder<K, V> clearRawMap() {
+ this.rawMap = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularGuavaMaps<K, V> build() {
+ com.google.common.collect.ImmutableMap<K, V> battleaxes = this.battleaxes == null ? com.google.common.collect.ImmutableMap.<K, V>of() : this.battleaxes.build();
+ com.google.common.collect.ImmutableSortedMap<Integer, V> vertices = this.vertices == null ? com.google.common.collect.ImmutableSortedMap.<Integer, V>of() : this.vertices.build();
+ com.google.common.collect.ImmutableBiMap<java.lang.Object, java.lang.Object> rawMap = this.rawMap == null ? com.google.common.collect.ImmutableBiMap.<java.lang.Object, java.lang.Object>of() : this.rawMap.build();
+ return new BuilderSingularGuavaMaps<K, V>(battleaxes, vertices, rawMap);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderSingularGuavaMaps.BuilderSingularGuavaMapsBuilder(battleaxes=" + this.battleaxes + ", vertices=" + this.vertices + ", rawMap=" + this.rawMap + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <K, V> BuilderSingularGuavaMapsBuilder<K, V> builder() {
+ return new BuilderSingularGuavaMapsBuilder<K, V>();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderSingularLists.java b/test/transform/resource/after-delombok/BuilderSingularLists.java
new file mode 100644
index 00000000..a0be0c12
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderSingularLists.java
@@ -0,0 +1,123 @@
+import java.util.List;
+import java.util.Collection;
+class BuilderSingularLists<T> {
+ private List<T> children;
+ private Collection<? extends Number> scarves;
+ @SuppressWarnings("all")
+ private List rawList;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularLists(final List<T> children, final Collection<? extends Number> scarves, final List rawList) {
+ this.children = children;
+ this.scarves = scarves;
+ this.rawList = rawList;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderSingularListsBuilder<T> {
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<T> children;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<Number> scarves;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<java.lang.Object> rawList;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularListsBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> child(final T child) {
+ if (this.children == null) this.children = new java.util.ArrayList<T>();
+ this.children.add(child);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> children(final java.util.Collection<? extends T> children) {
+ if (this.children == null) this.children = new java.util.ArrayList<T>();
+ this.children.addAll(children);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> clearChildren() {
+ if (this.children != null) this.children.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> scarf(final Number scarf) {
+ if (this.scarves == null) this.scarves = new java.util.ArrayList<Number>();
+ this.scarves.add(scarf);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> scarves(final java.util.Collection<? extends Number> scarves) {
+ if (this.scarves == null) this.scarves = new java.util.ArrayList<Number>();
+ this.scarves.addAll(scarves);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> clearScarves() {
+ if (this.scarves != null) this.scarves.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> rawList(final java.lang.Object rawList) {
+ if (this.rawList == null) this.rawList = new java.util.ArrayList<java.lang.Object>();
+ this.rawList.add(rawList);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> rawList(final java.util.Collection<?> rawList) {
+ if (this.rawList == null) this.rawList = new java.util.ArrayList<java.lang.Object>();
+ this.rawList.addAll(rawList);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularListsBuilder<T> clearRawList() {
+ if (this.rawList != null) this.rawList.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularLists<T> build() {
+ java.util.List<T> children;
+ switch (this.children == null ? 0 : this.children.size()) {
+ case 0:
+ children = java.util.Collections.emptyList();
+ break;
+ case 1:
+ children = java.util.Collections.singletonList(this.children.get(0));
+ break;
+ default:
+ children = java.util.Collections.unmodifiableList(new java.util.ArrayList<T>(this.children));
+ }
+ java.util.Collection<Number> scarves;
+ switch (this.scarves == null ? 0 : this.scarves.size()) {
+ case 0:
+ scarves = java.util.Collections.emptyList();
+ break;
+ case 1:
+ scarves = java.util.Collections.singletonList(this.scarves.get(0));
+ break;
+ default:
+ scarves = java.util.Collections.unmodifiableList(new java.util.ArrayList<Number>(this.scarves));
+ }
+ java.util.List<java.lang.Object> rawList;
+ switch (this.rawList == null ? 0 : this.rawList.size()) {
+ case 0:
+ rawList = java.util.Collections.emptyList();
+ break;
+ case 1:
+ rawList = java.util.Collections.singletonList(this.rawList.get(0));
+ break;
+ default:
+ rawList = java.util.Collections.unmodifiableList(new java.util.ArrayList<java.lang.Object>(this.rawList));
+ }
+ return new BuilderSingularLists<T>(children, scarves, rawList);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderSingularLists.BuilderSingularListsBuilder(children=" + this.children + ", scarves=" + this.scarves + ", rawList=" + this.rawList + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <T> BuilderSingularListsBuilder<T> builder() {
+ return new BuilderSingularListsBuilder<T>();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderSingularMaps.java b/test/transform/resource/after-delombok/BuilderSingularMaps.java
new file mode 100644
index 00000000..6520568b
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderSingularMaps.java
@@ -0,0 +1,213 @@
+import java.util.Map;
+import java.util.SortedMap;
+class BuilderSingularMaps<K, V> {
+ private Map<K, V> women;
+ private SortedMap<K, ? extends Number> men;
+ @SuppressWarnings("all")
+ private Map rawMap;
+ private Map<String, V> stringMap;
+ @SuppressWarnings("all")
+ BuilderSingularMaps(Map<K, V> women, SortedMap<K, ? extends Number> men, Map rawMap, Map<String, V> stringMap) {
+ this.women = women;
+ this.men = men;
+ this.rawMap = rawMap;
+ this.stringMap = stringMap;
+ }
+ @SuppressWarnings("all")
+ public static class BuilderSingularMapsBuilder<K, V> {
+ @SuppressWarnings("all")
+ private java.util.ArrayList<K> women$key;
+ @SuppressWarnings("all")
+ private java.util.ArrayList<V> women$value;
+ @SuppressWarnings("all")
+ private java.util.ArrayList<K> men$key;
+ @SuppressWarnings("all")
+ private java.util.ArrayList<Number> men$value;
+ @SuppressWarnings("all")
+ private java.util.ArrayList<Object> rawMap$key;
+ @SuppressWarnings("all")
+ private java.util.ArrayList<Object> rawMap$value;
+ @SuppressWarnings("all")
+ private java.util.ArrayList<String> stringMap$key;
+ @SuppressWarnings("all")
+ private java.util.ArrayList<V> stringMap$value;
+ @SuppressWarnings("all")
+ BuilderSingularMapsBuilder() {
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> woman(K womanKey, V womanValue) {
+ if (this.women$key == null) {
+ this.women$key = new java.util.ArrayList<K>();
+ this.women$value = new java.util.ArrayList<V>();
+ }
+ this.women$key.add(womanKey);
+ this.women$value.add(womanValue);
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> women(java.util.Map<? extends K, ? extends V> women) {
+ if (this.women$key == null) {
+ this.women$key = new java.util.ArrayList<K>();
+ this.women$value = new java.util.ArrayList<V>();
+ }
+ for (java.util.Map.Entry<? extends K, ? extends V> $lombokEntry : women.entrySet()) {
+ this.women$key.add($lombokEntry.getKey());
+ this.women$value.add($lombokEntry.getValue());
+ }
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> clearWomen() {
+ if (this.women$key != null) {
+ this.women$key.clear();
+ this.women$value.clear();
+ }
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> man(K manKey, Number manValue) {
+ if (this.men$key == null) {
+ this.men$key = new java.util.ArrayList<K>();
+ this.men$value = new java.util.ArrayList<Number>();
+ }
+ this.men$key.add(manKey);
+ this.men$value.add(manValue);
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> men(java.util.Map<? extends K, ? extends Number> men) {
+ if (this.men$key == null) {
+ this.men$key = new java.util.ArrayList<K>();
+ this.men$value = new java.util.ArrayList<Number>();
+ }
+ for (java.util.Map.Entry<? extends K, ? extends Number> $lombokEntry : men.entrySet()) {
+ this.men$key.add($lombokEntry.getKey());
+ this.men$value.add($lombokEntry.getValue());
+ }
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> clearMen() {
+ if (this.men$key != null) {
+ this.men$key.clear();
+ this.men$value.clear();
+ }
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> rawMap(Object rawMapKey, Object rawMapValue) {
+ if (this.rawMap$key == null) {
+ this.rawMap$key = new java.util.ArrayList<Object>();
+ this.rawMap$value = new java.util.ArrayList<Object>();
+ }
+ this.rawMap$key.add(rawMapKey);
+ this.rawMap$value.add(rawMapValue);
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> rawMap(java.util.Map<?, ?> rawMap) {
+ if (this.rawMap$key == null) {
+ this.rawMap$key = new java.util.ArrayList<Object>();
+ this.rawMap$value = new java.util.ArrayList<Object>();
+ }
+ for (java.util.Map.Entry<?, ?> $lombokEntry : rawMap.entrySet()) {
+ this.rawMap$key.add($lombokEntry.getKey());
+ this.rawMap$value.add($lombokEntry.getValue());
+ }
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> clearRawMap() {
+ if (this.rawMap$key != null) {
+ this.rawMap$key.clear();
+ this.rawMap$value.clear();
+ }
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> stringMap(String stringMapKey, V stringMapValue) {
+ if (this.stringMap$key == null) {
+ this.stringMap$key = new java.util.ArrayList<String>();
+ this.stringMap$value = new java.util.ArrayList<V>();
+ }
+ this.stringMap$key.add(stringMapKey);
+ this.stringMap$value.add(stringMapValue);
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> stringMap(java.util.Map<? extends String, ? extends V> stringMap) {
+ if (this.stringMap$key == null) {
+ this.stringMap$key = new java.util.ArrayList<String>();
+ this.stringMap$value = new java.util.ArrayList<V>();
+ }
+ for (java.util.Map.Entry<? extends String, ? extends V> $lombokEntry : stringMap.entrySet()) {
+ this.stringMap$key.add($lombokEntry.getKey());
+ this.stringMap$value.add($lombokEntry.getValue());
+ }
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMapsBuilder<K, V> clearStringMap() {
+ if (this.stringMap$key != null) {
+ this.stringMap$key.clear();
+ this.stringMap$value.clear();
+ }
+ return this;
+ }
+ @SuppressWarnings("all")
+ public BuilderSingularMaps<K, V> build() {
+ java.util.Map<K, V> women;
+ switch (this.women$key == null ? 0 : this.women$key.size()) {
+ case 0:
+ women = java.util.Collections.emptyMap();
+ break;
+ case 1:
+ women = java.util.Collections.singletonMap(this.women$key.get(0), this.women$value.get(0));
+ break;
+ default:
+ women = new java.util.LinkedHashMap<K, V>(this.women$key.size() < 1073741824 ? 1 + this.women$key.size() + (this.women$key.size() - 3) / 3 : Integer.MAX_VALUE);
+ for (int $i = 0; $i < this.women$key.size(); $i++) women.put(this.women$key.get($i), (V) this.women$value.get($i));
+ women = java.util.Collections.unmodifiableMap(women);
+ }
+ java.util.SortedMap<K, Number> men = new java.util.TreeMap<K, Number>();
+ if (this.men$key != null) for (int $i = 0; $i < (this.men$key == null ? 0 : this.men$key.size()); $i++) men.put(this.men$key.get($i), (Number) this.men$value.get($i));
+ men = java.util.Collections.unmodifiableSortedMap(men);
+ java.util.Map<Object, Object> rawMap;
+ switch (this.rawMap$key == null ? 0 : this.rawMap$key.size()) {
+ case 0:
+ rawMap = java.util.Collections.emptyMap();
+ break;
+ case 1:
+ rawMap = java.util.Collections.singletonMap(this.rawMap$key.get(0), this.rawMap$value.get(0));
+ break;
+ default:
+ rawMap = new java.util.LinkedHashMap<Object, Object>(this.rawMap$key.size() < 1073741824 ? 1 + this.rawMap$key.size() + (this.rawMap$key.size() - 3) / 3 : Integer.MAX_VALUE);
+ for (int $i = 0; $i < this.rawMap$key.size(); $i++) rawMap.put(this.rawMap$key.get($i), (Object) this.rawMap$value.get($i));
+ rawMap = java.util.Collections.unmodifiableMap(rawMap);
+ }
+ java.util.Map<String, V> stringMap;
+ switch (this.stringMap$key == null ? 0 : this.stringMap$key.size()) {
+ case 0:
+ stringMap = java.util.Collections.emptyMap();
+ break;
+ case 1:
+ stringMap = java.util.Collections.singletonMap(this.stringMap$key.get(0), this.stringMap$value.get(0));
+ break;
+ default:
+ stringMap = new java.util.LinkedHashMap<String, V>(this.stringMap$key.size() < 1073741824 ? 1 + this.stringMap$key.size() + (this.stringMap$key.size() - 3) / 3 : Integer.MAX_VALUE);
+ for (int $i = 0; $i < this.stringMap$key.size(); $i++) stringMap.put(this.stringMap$key.get($i), (V) this.stringMap$value.get($i));
+ stringMap = java.util.Collections.unmodifiableMap(stringMap);
+ }
+ return new BuilderSingularMaps<K, V>(women, men, rawMap, stringMap);
+ }
+ @Override
+ @SuppressWarnings("all")
+ public String toString() {
+ return "BuilderSingularMaps.BuilderSingularMapsBuilder(women$key=" + this.women$key + ", women$value=" + this.women$value + ", men$key=" + this.men$key + ", men$value=" + this.men$value + ", rawMap$key=" + this.rawMap$key + ", rawMap$value=" + this.rawMap$value + ", stringMap$key=" + this.stringMap$key + ", stringMap$value=" + this.stringMap$value + ")";
+ }
+ }
+ @SuppressWarnings("all")
+ public static <K, V> BuilderSingularMapsBuilder<K, V> builder() {
+ return new BuilderSingularMapsBuilder<K, V>();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderSingularNoAuto.java b/test/transform/resource/after-delombok/BuilderSingularNoAuto.java
new file mode 100644
index 00000000..189408da
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderSingularNoAuto.java
@@ -0,0 +1,121 @@
+import java.util.List;
+class BuilderSingularNoAuto {
+ private List<String> things;
+ private List<String> widgets;
+ private List<String> items;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularNoAuto(final List<String> things, final List<String> widgets, final List<String> items) {
+ this.things = things;
+ this.widgets = widgets;
+ this.items = items;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderSingularNoAutoBuilder {
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<String> things;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<String> widgets;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<String> items;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularNoAutoBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder things(final String things) {
+ if (this.things == null) this.things = new java.util.ArrayList<String>();
+ this.things.add(things);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder things(final java.util.Collection<? extends String> things) {
+ if (this.things == null) this.things = new java.util.ArrayList<String>();
+ this.things.addAll(things);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder clearThings() {
+ if (this.things != null) this.things.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder widget(final String widget) {
+ if (this.widgets == null) this.widgets = new java.util.ArrayList<String>();
+ this.widgets.add(widget);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder widgets(final java.util.Collection<? extends String> widgets) {
+ if (this.widgets == null) this.widgets = new java.util.ArrayList<String>();
+ this.widgets.addAll(widgets);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder clearWidgets() {
+ if (this.widgets != null) this.widgets.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder items(final String items) {
+ if (this.items == null) this.items = new java.util.ArrayList<String>();
+ this.items.add(items);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder items(final java.util.Collection<? extends String> items) {
+ if (this.items == null) this.items = new java.util.ArrayList<String>();
+ this.items.addAll(items);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAutoBuilder clearItems() {
+ if (this.items != null) this.items.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularNoAuto build() {
+ java.util.List<String> things;
+ switch (this.things == null ? 0 : this.things.size()) {
+ case 0:
+ things = java.util.Collections.emptyList();
+ break;
+ case 1:
+ things = java.util.Collections.singletonList(this.things.get(0));
+ break;
+ default:
+ things = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.things));
+ }
+ java.util.List<String> widgets;
+ switch (this.widgets == null ? 0 : this.widgets.size()) {
+ case 0:
+ widgets = java.util.Collections.emptyList();
+ break;
+ case 1:
+ widgets = java.util.Collections.singletonList(this.widgets.get(0));
+ break;
+ default:
+ widgets = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.widgets));
+ }
+ java.util.List<String> items;
+ switch (this.items == null ? 0 : this.items.size()) {
+ case 0:
+ items = java.util.Collections.emptyList();
+ break;
+ case 1:
+ items = java.util.Collections.singletonList(this.items.get(0));
+ break;
+ default:
+ items = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.items));
+ }
+ return new BuilderSingularNoAuto(things, widgets, items);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderSingularNoAuto.BuilderSingularNoAutoBuilder(things=" + this.things + ", widgets=" + this.widgets + ", items=" + this.items + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderSingularNoAutoBuilder builder() {
+ return new BuilderSingularNoAutoBuilder();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderSingularRedirectToGuava.java b/test/transform/resource/after-delombok/BuilderSingularRedirectToGuava.java
new file mode 100644
index 00000000..938f3bbc
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderSingularRedirectToGuava.java
@@ -0,0 +1,93 @@
+import java.util.Set;
+import java.util.NavigableMap;
+import java.util.Collection;
+class BuilderSingularRedirectToGuava {
+ private Set<String> dangerMice;
+ private NavigableMap<Integer, Number> things;
+ private Collection<Class<?>> doohickeys;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularRedirectToGuava(final Set<String> dangerMice, final NavigableMap<Integer, Number> things, final Collection<Class<?>> doohickeys) {
+ this.dangerMice = dangerMice;
+ this.things = things;
+ this.doohickeys = doohickeys;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderSingularRedirectToGuavaBuilder {
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableSet.Builder<String> dangerMice;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableSortedMap.Builder<Integer, Number> things;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableList.Builder<Class<?>> doohickeys;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularRedirectToGuavaBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder dangerMouse(final String dangerMouse) {
+ if (this.dangerMice == null) this.dangerMice = com.google.common.collect.ImmutableSet.builder();
+ this.dangerMice.add(dangerMouse);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder dangerMice(final java.lang.Iterable<? extends String> dangerMice) {
+ if (this.dangerMice == null) this.dangerMice = com.google.common.collect.ImmutableSet.builder();
+ this.dangerMice.addAll(dangerMice);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder clearDangerMice() {
+ this.dangerMice = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder thing(final Integer key, final Number value) {
+ if (this.things == null) this.things = com.google.common.collect.ImmutableSortedMap.naturalOrder();
+ this.things.put(key, value);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder things(final java.util.Map<? extends Integer, ? extends Number> things) {
+ if (this.things == null) this.things = com.google.common.collect.ImmutableSortedMap.naturalOrder();
+ this.things.putAll(things);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder clearThings() {
+ this.things = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder doohickey(final Class<?> doohickey) {
+ if (this.doohickeys == null) this.doohickeys = com.google.common.collect.ImmutableList.builder();
+ this.doohickeys.add(doohickey);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder doohickeys(final java.lang.Iterable<? extends Class<?>> doohickeys) {
+ if (this.doohickeys == null) this.doohickeys = com.google.common.collect.ImmutableList.builder();
+ this.doohickeys.addAll(doohickeys);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuavaBuilder clearDoohickeys() {
+ this.doohickeys = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularRedirectToGuava build() {
+ java.util.Set<String> dangerMice = this.dangerMice == null ? com.google.common.collect.ImmutableSet.<String>of() : this.dangerMice.build();
+ java.util.NavigableMap<Integer, Number> things = this.things == null ? com.google.common.collect.ImmutableSortedMap.<Integer, Number>of() : this.things.build();
+ java.util.Collection<Class<?>> doohickeys = this.doohickeys == null ? com.google.common.collect.ImmutableList.<Class<?>>of() : this.doohickeys.build();
+ return new BuilderSingularRedirectToGuava(dangerMice, things, doohickeys);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderSingularRedirectToGuava.BuilderSingularRedirectToGuavaBuilder(dangerMice=" + this.dangerMice + ", things=" + this.things + ", doohickeys=" + this.doohickeys + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderSingularRedirectToGuavaBuilder builder() {
+ return new BuilderSingularRedirectToGuavaBuilder();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderSingularSets.java b/test/transform/resource/after-delombok/BuilderSingularSets.java
new file mode 100644
index 00000000..2d75b294
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderSingularSets.java
@@ -0,0 +1,153 @@
+import java.util.Set;
+import java.util.SortedSet;
+class BuilderSingularSets<T> {
+ private Set<T> dangerMice;
+ private SortedSet<? extends Number> octopodes;
+ @SuppressWarnings("all")
+ private Set rawSet;
+ private Set<String> stringSet;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularSets(final Set<T> dangerMice, final SortedSet<? extends Number> octopodes, final Set rawSet, final Set<String> stringSet) {
+ this.dangerMice = dangerMice;
+ this.octopodes = octopodes;
+ this.rawSet = rawSet;
+ this.stringSet = stringSet;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderSingularSetsBuilder<T> {
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<T> dangerMice;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<Number> octopodes;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<java.lang.Object> rawSet;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<String> stringSet;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularSetsBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> dangerMouse(final T dangerMouse) {
+ if (this.dangerMice == null) this.dangerMice = new java.util.ArrayList<T>();
+ this.dangerMice.add(dangerMouse);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> dangerMice(final java.util.Collection<? extends T> dangerMice) {
+ if (this.dangerMice == null) this.dangerMice = new java.util.ArrayList<T>();
+ this.dangerMice.addAll(dangerMice);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> clearDangerMice() {
+ if (this.dangerMice != null) this.dangerMice.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> octopus(final Number octopus) {
+ if (this.octopodes == null) this.octopodes = new java.util.ArrayList<Number>();
+ this.octopodes.add(octopus);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> octopodes(final java.util.Collection<? extends Number> octopodes) {
+ if (this.octopodes == null) this.octopodes = new java.util.ArrayList<Number>();
+ this.octopodes.addAll(octopodes);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> clearOctopodes() {
+ if (this.octopodes != null) this.octopodes.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> rawSet(final java.lang.Object rawSet) {
+ if (this.rawSet == null) this.rawSet = new java.util.ArrayList<java.lang.Object>();
+ this.rawSet.add(rawSet);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> rawSet(final java.util.Collection<?> rawSet) {
+ if (this.rawSet == null) this.rawSet = new java.util.ArrayList<java.lang.Object>();
+ this.rawSet.addAll(rawSet);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> clearRawSet() {
+ if (this.rawSet != null) this.rawSet.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> stringSet(final String stringSet) {
+ if (this.stringSet == null) this.stringSet = new java.util.ArrayList<String>();
+ this.stringSet.add(stringSet);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> stringSet(final java.util.Collection<? extends String> stringSet) {
+ if (this.stringSet == null) this.stringSet = new java.util.ArrayList<String>();
+ this.stringSet.addAll(stringSet);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSetsBuilder<T> clearStringSet() {
+ if (this.stringSet != null) this.stringSet.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularSets<T> build() {
+ java.util.Set<T> dangerMice;
+ switch (this.dangerMice == null ? 0 : this.dangerMice.size()) {
+ case 0:
+ dangerMice = java.util.Collections.emptySet();
+ break;
+ case 1:
+ dangerMice = java.util.Collections.singleton(this.dangerMice.get(0));
+ break;
+ default:
+ dangerMice = new java.util.LinkedHashSet<T>(this.dangerMice.size() < 1073741824 ? 1 + this.dangerMice.size() + (this.dangerMice.size() - 3) / 3 : java.lang.Integer.MAX_VALUE);
+ dangerMice.addAll(this.dangerMice);
+ dangerMice = java.util.Collections.unmodifiableSet(dangerMice);
+ }
+ java.util.SortedSet<Number> octopodes = new java.util.TreeSet<Number>();
+ if (this.octopodes != null) octopodes.addAll(this.octopodes);
+ octopodes = java.util.Collections.unmodifiableSortedSet(octopodes);
+ java.util.Set<java.lang.Object> rawSet;
+ switch (this.rawSet == null ? 0 : this.rawSet.size()) {
+ case 0:
+ rawSet = java.util.Collections.emptySet();
+ break;
+ case 1:
+ rawSet = java.util.Collections.singleton(this.rawSet.get(0));
+ break;
+ default:
+ rawSet = new java.util.LinkedHashSet<java.lang.Object>(this.rawSet.size() < 1073741824 ? 1 + this.rawSet.size() + (this.rawSet.size() - 3) / 3 : java.lang.Integer.MAX_VALUE);
+ rawSet.addAll(this.rawSet);
+ rawSet = java.util.Collections.unmodifiableSet(rawSet);
+ }
+ java.util.Set<String> stringSet;
+ switch (this.stringSet == null ? 0 : this.stringSet.size()) {
+ case 0:
+ stringSet = java.util.Collections.emptySet();
+ break;
+ case 1:
+ stringSet = java.util.Collections.singleton(this.stringSet.get(0));
+ break;
+ default:
+ stringSet = new java.util.LinkedHashSet<String>(this.stringSet.size() < 1073741824 ? 1 + this.stringSet.size() + (this.stringSet.size() - 3) / 3 : java.lang.Integer.MAX_VALUE);
+ stringSet.addAll(this.stringSet);
+ stringSet = java.util.Collections.unmodifiableSet(stringSet);
+ }
+ return new BuilderSingularSets<T>(dangerMice, octopodes, rawSet, stringSet);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderSingularSets.BuilderSingularSetsBuilder(dangerMice=" + this.dangerMice + ", octopodes=" + this.octopodes + ", rawSet=" + this.rawSet + ", stringSet=" + this.stringSet + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <T> BuilderSingularSetsBuilder<T> builder() {
+ return new BuilderSingularSetsBuilder<T>();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderSingularWithPrefixes.java b/test/transform/resource/after-delombok/BuilderSingularWithPrefixes.java
new file mode 100644
index 00000000..e103d6dd
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderSingularWithPrefixes.java
@@ -0,0 +1,56 @@
+class BuilderSingularWithPrefixes {
+ private java.util.List<String> _elems;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularWithPrefixes(final java.util.List<String> elems) {
+ this._elems = elems;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderSingularWithPrefixesBuilder {
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<String> elems;
+ @java.lang.SuppressWarnings("all")
+ BuilderSingularWithPrefixesBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularWithPrefixesBuilder elem(final String elem) {
+ if (this.elems == null) this.elems = new java.util.ArrayList<String>();
+ this.elems.add(elem);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularWithPrefixesBuilder elems(final java.util.Collection<? extends String> elems) {
+ if (this.elems == null) this.elems = new java.util.ArrayList<String>();
+ this.elems.addAll(elems);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularWithPrefixesBuilder clearElems() {
+ if (this.elems != null) this.elems.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderSingularWithPrefixes build() {
+ java.util.List<String> elems;
+ switch (this.elems == null ? 0 : this.elems.size()) {
+ case 0:
+ elems = java.util.Collections.emptyList();
+ break;
+ case 1:
+ elems = java.util.Collections.singletonList(this.elems.get(0));
+ break;
+ default:
+ elems = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.elems));
+ }
+ return new BuilderSingularWithPrefixes(elems);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderSingularWithPrefixes.BuilderSingularWithPrefixesBuilder(elems=" + this.elems + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderSingularWithPrefixesBuilder builder() {
+ return new BuilderSingularWithPrefixesBuilder();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderValueData.java b/test/transform/resource/after-delombok/BuilderValueData.java
new file mode 100644
index 00000000..e1c107da
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderValueData.java
@@ -0,0 +1,109 @@
+import java.util.List;
+final class BuilderAndValue {
+ private final int zero = 0;
+ @java.lang.SuppressWarnings("all")
+ BuilderAndValue() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderAndValueBuilder {
+ @java.lang.SuppressWarnings("all")
+ BuilderAndValueBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderAndValue build() {
+ return new BuilderAndValue();
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderAndValue.BuilderAndValueBuilder()";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderAndValueBuilder builder() {
+ return new BuilderAndValueBuilder();
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getZero() {
+ return this.zero;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof BuilderAndValue)) return false;
+ final BuilderAndValue other = (BuilderAndValue) o;
+ if (this.getZero() != other.getZero()) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = result * PRIME + this.getZero();
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderAndValue(zero=" + this.getZero() + ")";
+ }
+}
+
+class BuilderAndData {
+ private final int zero = 0;
+ @java.lang.SuppressWarnings("all")
+ BuilderAndData() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderAndDataBuilder {
+ @java.lang.SuppressWarnings("all")
+ BuilderAndDataBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderAndData build() {
+ return new BuilderAndData();
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderAndData.BuilderAndDataBuilder()";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderAndDataBuilder builder() {
+ return new BuilderAndDataBuilder();
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getZero() {
+ return this.zero;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof BuilderAndData)) return false;
+ final BuilderAndData other = (BuilderAndData) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ if (this.getZero() != other.getZero()) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof BuilderAndData;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = result * PRIME + this.getZero();
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderAndData(zero=" + this.getZero() + ")";
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderWithAccessors.java b/test/transform/resource/after-delombok/BuilderWithAccessors.java
index 503c33be..e6a6da79 100644
--- a/test/transform/resource/after-delombok/BuilderWithAccessors.java
+++ b/test/transform/resource/after-delombok/BuilderWithAccessors.java
@@ -12,54 +12,49 @@ class BuilderWithAccessors {
}
@java.lang.SuppressWarnings("all")
public static class BuilderWithAccessorsBuilder {
+ @java.lang.SuppressWarnings("all")
private int plower;
+ @java.lang.SuppressWarnings("all")
private int upper;
+ @java.lang.SuppressWarnings("all")
private int foo;
+ @java.lang.SuppressWarnings("all")
private int _bar;
-
@java.lang.SuppressWarnings("all")
BuilderWithAccessorsBuilder() {
-
}
-
@java.lang.SuppressWarnings("all")
public BuilderWithAccessorsBuilder plower(final int plower) {
this.plower = plower;
return this;
}
-
@java.lang.SuppressWarnings("all")
public BuilderWithAccessorsBuilder upper(final int upper) {
this.upper = upper;
return this;
}
-
@java.lang.SuppressWarnings("all")
public BuilderWithAccessorsBuilder foo(final int foo) {
this.foo = foo;
return this;
}
-
@java.lang.SuppressWarnings("all")
public BuilderWithAccessorsBuilder _bar(final int _bar) {
this._bar = _bar;
return this;
}
-
@java.lang.SuppressWarnings("all")
public BuilderWithAccessors build() {
return new BuilderWithAccessors(plower, upper, foo, _bar);
}
-
@java.lang.Override
@java.lang.SuppressWarnings("all")
public java.lang.String toString() {
return "BuilderWithAccessors.BuilderWithAccessorsBuilder(plower=" + this.plower + ", upper=" + this.upper + ", foo=" + this.foo + ", _bar=" + this._bar + ")";
}
}
-
@java.lang.SuppressWarnings("all")
public static BuilderWithAccessorsBuilder builder() {
return new BuilderWithAccessorsBuilder();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/BuilderWithDeprecated.java b/test/transform/resource/after-delombok/BuilderWithDeprecated.java
new file mode 100644
index 00000000..cd887529
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderWithDeprecated.java
@@ -0,0 +1,111 @@
+import com.google.common.collect.ImmutableList;
+public class BuilderWithDeprecated {
+ /**
+ * @deprecated
+ */
+ String dep1;
+ @Deprecated
+ int dep2;
+ @Deprecated
+ java.util.List<String> strings;
+ @Deprecated
+ ImmutableList<Integer> numbers;
+ @java.lang.SuppressWarnings("all")
+ BuilderWithDeprecated(final String dep1, final int dep2, final java.util.List<String> strings, final ImmutableList<Integer> numbers) {
+ this.dep1 = dep1;
+ this.dep2 = dep2;
+ this.strings = strings;
+ this.numbers = numbers;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderWithDeprecatedBuilder {
+ @java.lang.SuppressWarnings("all")
+ private String dep1;
+ @java.lang.SuppressWarnings("all")
+ private int dep2;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<String> strings;
+ @java.lang.SuppressWarnings("all")
+ private com.google.common.collect.ImmutableList.Builder<Integer> numbers;
+ @java.lang.SuppressWarnings("all")
+ BuilderWithDeprecatedBuilder() {
+ }
+ @java.lang.Deprecated
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecatedBuilder dep1(final String dep1) {
+ this.dep1 = dep1;
+ return this;
+ }
+ @java.lang.Deprecated
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecatedBuilder dep2(final int dep2) {
+ this.dep2 = dep2;
+ return this;
+ }
+ @java.lang.Deprecated
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecatedBuilder string(final String string) {
+ if (this.strings == null) this.strings = new java.util.ArrayList<String>();
+ this.strings.add(string);
+ return this;
+ }
+ @java.lang.Deprecated
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecatedBuilder strings(final java.util.Collection<? extends String> strings) {
+ if (this.strings == null) this.strings = new java.util.ArrayList<String>();
+ this.strings.addAll(strings);
+ return this;
+ }
+ @java.lang.Deprecated
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecatedBuilder clearStrings() {
+ if (this.strings != null) this.strings.clear();
+ return this;
+ }
+ @java.lang.Deprecated
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecatedBuilder number(final Integer number) {
+ if (this.numbers == null) this.numbers = com.google.common.collect.ImmutableList.builder();
+ this.numbers.add(number);
+ return this;
+ }
+ @java.lang.Deprecated
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecatedBuilder numbers(final java.lang.Iterable<? extends Integer> numbers) {
+ if (this.numbers == null) this.numbers = com.google.common.collect.ImmutableList.builder();
+ this.numbers.addAll(numbers);
+ return this;
+ }
+ @java.lang.Deprecated
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecatedBuilder clearNumbers() {
+ this.numbers = null;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithDeprecated build() {
+ java.util.List<String> strings;
+ switch (this.strings == null ? 0 : this.strings.size()) {
+ case 0:
+ strings = java.util.Collections.emptyList();
+ break;
+ case 1:
+ strings = java.util.Collections.singletonList(this.strings.get(0));
+ break;
+ default:
+ strings = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.strings));
+ }
+ com.google.common.collect.ImmutableList<Integer> numbers = this.numbers == null ? com.google.common.collect.ImmutableList.<Integer>of() : this.numbers.build();
+ return new BuilderWithDeprecated(dep1, dep2, strings, numbers);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderWithDeprecated.BuilderWithDeprecatedBuilder(dep1=" + this.dep1 + ", dep2=" + this.dep2 + ", strings=" + this.strings + ", numbers=" + this.numbers + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderWithDeprecatedBuilder builder() {
+ return new BuilderWithDeprecatedBuilder();
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderWithExistingBuilderClass.java b/test/transform/resource/after-delombok/BuilderWithExistingBuilderClass.java
index 1d40dbfa..0a5edacd 100644
--- a/test/transform/resource/after-delombok/BuilderWithExistingBuilderClass.java
+++ b/test/transform/resource/after-delombok/BuilderWithExistingBuilderClass.java
@@ -3,7 +3,9 @@ class BuilderWithExistingBuilderClass<T, K extends Number> {
return null;
}
public static class BuilderWithExistingBuilderClassBuilder<Z extends Number> {
+ @java.lang.SuppressWarnings("all")
private boolean arg2;
+ @java.lang.SuppressWarnings("all")
private String arg3;
private Z arg1;
public void arg2(boolean arg) {
@@ -22,7 +24,7 @@ class BuilderWithExistingBuilderClass<T, K extends Number> {
return this;
}
@java.lang.SuppressWarnings("all")
- public BuilderWithExistingBuilderClass build() {
+ public BuilderWithExistingBuilderClass<String, Z> build() {
return BuilderWithExistingBuilderClass.<Z>staticMethod(arg1, arg2, arg3);
}
@java.lang.Override
@@ -35,4 +37,4 @@ class BuilderWithExistingBuilderClass<T, K extends Number> {
public static <Z extends Number> BuilderWithExistingBuilderClassBuilder<Z> builder() {
return new BuilderWithExistingBuilderClassBuilder<Z>();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/BuilderWithRecursiveGenerics.java b/test/transform/resource/after-delombok/BuilderWithRecursiveGenerics.java
new file mode 100644
index 00000000..7fb300e4
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderWithRecursiveGenerics.java
@@ -0,0 +1,85 @@
+import java.util.Set;
+public class BuilderWithRecursiveGenerics {
+ interface Inter<T, U extends Inter<T, U>> {
+ }
+ public static final class Test<Foo, Bar extends Set<Foo>, Quz extends Inter<Bar, Quz>> {
+ private final Foo foo;
+ private final Bar bar;
+ @java.lang.SuppressWarnings("all")
+ Test(final Foo foo, final Bar bar) {
+ this.foo = foo;
+ this.bar = bar;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class TestBuilder<Foo, Bar extends Set<Foo>, Quz extends Inter<Bar, Quz>> {
+ @java.lang.SuppressWarnings("all")
+ private Foo foo;
+ @java.lang.SuppressWarnings("all")
+ private Bar bar;
+ @java.lang.SuppressWarnings("all")
+ TestBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public TestBuilder<Foo, Bar, Quz> foo(final Foo foo) {
+ this.foo = foo;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public TestBuilder<Foo, Bar, Quz> bar(final Bar bar) {
+ this.bar = bar;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public Test<Foo, Bar, Quz> build() {
+ return new Test<Foo, Bar, Quz>(foo, bar);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderWithRecursiveGenerics.Test.TestBuilder(foo=" + this.foo + ", bar=" + this.bar + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <Foo, Bar extends Set<Foo>, Quz extends Inter<Bar, Quz>> TestBuilder<Foo, Bar, Quz> builder() {
+ return new TestBuilder<Foo, Bar, Quz>();
+ }
+ @java.lang.SuppressWarnings("all")
+ public Foo getFoo() {
+ return this.foo;
+ }
+ @java.lang.SuppressWarnings("all")
+ public Bar getBar() {
+ return this.bar;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof BuilderWithRecursiveGenerics.Test)) return false;
+ final BuilderWithRecursiveGenerics.Test<?, ?, ?> other = (BuilderWithRecursiveGenerics.Test<?, ?, ?>) o;
+ final java.lang.Object this$foo = this.getFoo();
+ final java.lang.Object other$foo = other.getFoo();
+ if (this$foo == null ? other$foo != null : !this$foo.equals(other$foo)) return false;
+ final java.lang.Object this$bar = this.getBar();
+ final java.lang.Object other$bar = other.getBar();
+ if (this$bar == null ? other$bar != null : !this$bar.equals(other$bar)) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ final java.lang.Object $foo = this.getFoo();
+ result = result * PRIME + ($foo == null ? 43 : $foo.hashCode());
+ final java.lang.Object $bar = this.getBar();
+ result = result * PRIME + ($bar == null ? 43 : $bar.hashCode());
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderWithRecursiveGenerics.Test(foo=" + this.getFoo() + ", bar=" + this.getBar() + ")";
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderWithToBuilder.java b/test/transform/resource/after-delombok/BuilderWithToBuilder.java
new file mode 100644
index 00000000..46387f0f
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderWithToBuilder.java
@@ -0,0 +1,185 @@
+import java.util.List;
+class BuilderWithToBuilder<T> {
+ private String mOne;
+ private String mTwo;
+ private T foo;
+ private List<T> bars;
+ public static <K> K rrr(BuilderWithToBuilder<K> x) {
+ return x.foo;
+ }
+ @java.lang.SuppressWarnings("all")
+ BuilderWithToBuilder(final String one, final String two, final T foo, final List<T> bars) {
+ this.mOne = one;
+ this.mTwo = two;
+ this.foo = foo;
+ this.bars = bars;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class BuilderWithToBuilderBuilder<T> {
+ @java.lang.SuppressWarnings("all")
+ private String one;
+ @java.lang.SuppressWarnings("all")
+ private String two;
+ @java.lang.SuppressWarnings("all")
+ private T foo;
+ @java.lang.SuppressWarnings("all")
+ private java.util.ArrayList<T> bars;
+ @java.lang.SuppressWarnings("all")
+ BuilderWithToBuilderBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithToBuilderBuilder<T> one(final String one) {
+ this.one = one;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithToBuilderBuilder<T> two(final String two) {
+ this.two = two;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithToBuilderBuilder<T> foo(final T foo) {
+ this.foo = foo;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithToBuilderBuilder<T> bar(final T bar) {
+ if (this.bars == null) this.bars = new java.util.ArrayList<T>();
+ this.bars.add(bar);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithToBuilderBuilder<T> bars(final java.util.Collection<? extends T> bars) {
+ if (this.bars == null) this.bars = new java.util.ArrayList<T>();
+ this.bars.addAll(bars);
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithToBuilderBuilder<T> clearBars() {
+ if (this.bars != null) this.bars.clear();
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithToBuilder<T> build() {
+ java.util.List<T> bars;
+ switch (this.bars == null ? 0 : this.bars.size()) {
+ case 0:
+ bars = java.util.Collections.emptyList();
+ break;
+ case 1:
+ bars = java.util.Collections.singletonList(this.bars.get(0));
+ break;
+ default:
+ bars = java.util.Collections.unmodifiableList(new java.util.ArrayList<T>(this.bars));
+ }
+ return new BuilderWithToBuilder<T>(one, two, foo, bars);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderWithToBuilder.BuilderWithToBuilderBuilder(one=" + this.one + ", two=" + this.two + ", foo=" + this.foo + ", bars=" + this.bars + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <T> BuilderWithToBuilderBuilder<T> builder() {
+ return new BuilderWithToBuilderBuilder<T>();
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithToBuilderBuilder<T> toBuilder() {
+ return new BuilderWithToBuilderBuilder<T>().one(this.mOne).two(this.mTwo).foo(BuilderWithToBuilder.rrr(this)).bars(this.bars);
+ }
+}
+class ConstructorWithToBuilder<T> {
+ private String mOne;
+ private String mTwo;
+ private T foo;
+ @lombok.Singular
+ private List<T> bars;
+ public ConstructorWithToBuilder(String mOne, T bar) {
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class ConstructorWithToBuilderBuilder<T> {
+ @java.lang.SuppressWarnings("all")
+ private String mOne;
+ @java.lang.SuppressWarnings("all")
+ private T bar;
+ @java.lang.SuppressWarnings("all")
+ ConstructorWithToBuilderBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public ConstructorWithToBuilderBuilder<T> mOne(final String mOne) {
+ this.mOne = mOne;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public ConstructorWithToBuilderBuilder<T> bar(final T bar) {
+ this.bar = bar;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public ConstructorWithToBuilder<T> build() {
+ return new ConstructorWithToBuilder<T>(mOne, bar);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "ConstructorWithToBuilder.ConstructorWithToBuilderBuilder(mOne=" + this.mOne + ", bar=" + this.bar + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <T> ConstructorWithToBuilderBuilder<T> builder() {
+ return new ConstructorWithToBuilderBuilder<T>();
+ }
+ @java.lang.SuppressWarnings("all")
+ public ConstructorWithToBuilderBuilder<T> toBuilder() {
+ return new ConstructorWithToBuilderBuilder<T>().mOne(this.mOne).bar(this.foo);
+ }
+}
+class StaticWithToBuilder<T, K> {
+ private String mOne;
+ private String mTwo;
+ private T foo;
+ private K bar;
+ @lombok.Singular
+ private List<T> bars;
+ public static <Z> StaticWithToBuilder<Z, String> test(String mOne, Z bar) {
+ return new StaticWithToBuilder<Z, String>();
+ }
+ @java.lang.SuppressWarnings("all")
+ public static class StaticWithToBuilderBuilder<Z> {
+ @java.lang.SuppressWarnings("all")
+ private String mOne;
+ @java.lang.SuppressWarnings("all")
+ private Z bar;
+ @java.lang.SuppressWarnings("all")
+ StaticWithToBuilderBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public StaticWithToBuilderBuilder<Z> mOne(final String mOne) {
+ this.mOne = mOne;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public StaticWithToBuilderBuilder<Z> bar(final Z bar) {
+ this.bar = bar;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public StaticWithToBuilder<Z, String> build() {
+ return StaticWithToBuilder.<Z>test(mOne, bar);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "StaticWithToBuilder.StaticWithToBuilderBuilder(mOne=" + this.mOne + ", bar=" + this.bar + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ public static <Z> StaticWithToBuilderBuilder<Z> builder() {
+ return new StaticWithToBuilderBuilder<Z>();
+ }
+ @java.lang.SuppressWarnings("all")
+ public StaticWithToBuilderBuilder<T> toBuilder() {
+ return new StaticWithToBuilderBuilder<T>().mOne(this.mOne).bar(this.foo);
+ }
+}
diff --git a/test/transform/resource/after-delombok/BuilderWithTolerate.java b/test/transform/resource/after-delombok/BuilderWithTolerate.java
new file mode 100644
index 00000000..6ec7c091
--- /dev/null
+++ b/test/transform/resource/after-delombok/BuilderWithTolerate.java
@@ -0,0 +1,40 @@
+import lombok.experimental.Tolerate;
+public class BuilderWithTolerate {
+ private final int value;
+ public static void main(String[] args) {
+ BuilderWithTolerate.builder().value("42").build();
+ }
+ public static class BuilderWithTolerateBuilder {
+ @java.lang.SuppressWarnings("all")
+ private int value;
+ @Tolerate
+ public BuilderWithTolerateBuilder value(String s) {
+ return this.value(Integer.parseInt(s));
+ }
+ @java.lang.SuppressWarnings("all")
+ BuilderWithTolerateBuilder() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithTolerateBuilder value(final int value) {
+ this.value = value;
+ return this;
+ }
+ @java.lang.SuppressWarnings("all")
+ public BuilderWithTolerate build() {
+ return new BuilderWithTolerate(value);
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "BuilderWithTolerate.BuilderWithTolerateBuilder(value=" + this.value + ")";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ BuilderWithTolerate(final int value) {
+ this.value = value;
+ }
+ @java.lang.SuppressWarnings("all")
+ public static BuilderWithTolerateBuilder builder() {
+ return new BuilderWithTolerateBuilder();
+ }
+}
diff --git a/test/transform/resource/after-delombok/ConflictingStaticConstructorNames.java b/test/transform/resource/after-delombok/ConflictingStaticConstructorNames.java
index ae0c46bc..30aefaa0 100644
--- a/test/transform/resource/after-delombok/ConflictingStaticConstructorNames.java
+++ b/test/transform/resource/after-delombok/ConflictingStaticConstructorNames.java
@@ -4,8 +4,8 @@ class ConflictingStaticConstructorNames {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof ConflictingStaticConstructorNames)) return false;
- final ConflictingStaticConstructorNames other = (ConflictingStaticConstructorNames)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final ConflictingStaticConstructorNames other = (ConflictingStaticConstructorNames) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
return true;
}
@java.lang.SuppressWarnings("all")
@@ -26,4 +26,4 @@ class ConflictingStaticConstructorNames {
@java.lang.SuppressWarnings("all")
public ConflictingStaticConstructorNames() {
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/Constructors.java b/test/transform/resource/after-delombok/Constructors.java
index 4ffdc62b..b2e51c40 100644
--- a/test/transform/resource/after-delombok/Constructors.java
+++ b/test/transform/resource/after-delombok/Constructors.java
@@ -1,7 +1,6 @@
class RequiredArgsConstructor1 {
final int x;
String name;
- @java.beans.ConstructorProperties({"x"})
@java.lang.SuppressWarnings("all")
public RequiredArgsConstructor1(final int x) {
this.x = x;
@@ -10,7 +9,6 @@ class RequiredArgsConstructor1 {
class RequiredArgsConstructorAccess {
final int x;
String name;
- @java.beans.ConstructorProperties({"x"})
@java.lang.SuppressWarnings("all")
protected RequiredArgsConstructorAccess(final int x) {
this.x = x;
@@ -31,7 +29,6 @@ class RequiredArgsConstructorStaticName {
class RequiredArgsConstructorWithAnnotations {
final int x;
String name;
- @java.beans.ConstructorProperties({"x"})
@Deprecated
@java.lang.SuppressWarnings("all")
public RequiredArgsConstructorWithAnnotations(final int x) {
@@ -41,7 +38,6 @@ class RequiredArgsConstructorWithAnnotations {
class AllArgsConstructor1 {
final int x;
String name;
- @java.beans.ConstructorProperties({"x", "name"})
@java.lang.SuppressWarnings("all")
public AllArgsConstructor1(final int x, final String name) {
this.x = x;
@@ -86,3 +82,21 @@ class AllArgsConstructorPackageAccess {
this.x = x;
}
}
+class NoArgsConstructor2 {
+ final int x;
+ final double y;
+ final char c;
+ final boolean b;
+ final float f;
+ final String s;
+ byte z;
+ @java.lang.SuppressWarnings("all")
+ public NoArgsConstructor2() {
+ this.x = 0;
+ this.y = 0.0;
+ this.c = '\000';
+ this.b = false;
+ this.f = 0.0F;
+ this.s = null;
+ }
+}
diff --git a/test/transform/resource/after-delombok/ConstructorsConfiguration.java b/test/transform/resource/after-delombok/ConstructorsConfiguration.java
index 5bec3ae3..47b0cc16 100644
--- a/test/transform/resource/after-delombok/ConstructorsConfiguration.java
+++ b/test/transform/resource/after-delombok/ConstructorsConfiguration.java
@@ -5,11 +5,3 @@ class ConstructorsConfiguration {
this.x = x;
}
}
-class ConstructorsConfigurationExplicit {
- int x;
- @java.beans.ConstructorProperties({"x"})
- @java.lang.SuppressWarnings("all")
- public ConstructorsConfigurationExplicit(final int x) {
- this.x = x;
- }
-}
diff --git a/test/transform/resource/after-delombok/ConstructorsWithAccessors.java b/test/transform/resource/after-delombok/ConstructorsWithAccessors.java
index 9937c7ee..dd4ce12f 100644
--- a/test/transform/resource/after-delombok/ConstructorsWithAccessors.java
+++ b/test/transform/resource/after-delombok/ConstructorsWithAccessors.java
@@ -4,7 +4,6 @@ class ConstructorsWithAccessors {
int _huh;
int __huh2;
- @java.beans.ConstructorProperties({"plower", "upper", "huh", "_huh2"})
@java.lang.SuppressWarnings("all")
public ConstructorsWithAccessors(final int plower, final int upper, final int huh, final int _huh2) {
this.plower = plower;
@@ -13,3 +12,34 @@ class ConstructorsWithAccessors {
this.__huh2 = _huh2;
}
}
+
+class ConstructorsWithAccessorsNonNull {
+ @lombok.NonNull
+ Integer plower;
+ @lombok.NonNull
+ Integer pUpper;
+ @lombok.NonNull
+ Integer _huh;
+ @lombok.NonNull
+ final Integer __huh2;
+
+ @java.lang.SuppressWarnings("all")
+ public ConstructorsWithAccessorsNonNull(@lombok.NonNull final Integer plower, @lombok.NonNull final Integer upper, @lombok.NonNull final Integer huh, @lombok.NonNull final Integer _huh2) {
+ if (plower == null) {
+ throw new java.lang.NullPointerException("plower");
+ }
+ if (upper == null) {
+ throw new java.lang.NullPointerException("upper");
+ }
+ if (huh == null) {
+ throw new java.lang.NullPointerException("huh");
+ }
+ if (_huh2 == null) {
+ throw new java.lang.NullPointerException("_huh2");
+ }
+ this.plower = plower;
+ this.pUpper = upper;
+ this._huh = huh;
+ this.__huh2 = _huh2;
+ }
+}
diff --git a/test/transform/resource/after-delombok/DataConfiguration.java b/test/transform/resource/after-delombok/DataConfiguration.java
index 230083ec..b71e1c81 100644
--- a/test/transform/resource/after-delombok/DataConfiguration.java
+++ b/test/transform/resource/after-delombok/DataConfiguration.java
@@ -13,9 +13,9 @@ class DataConfiguration {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof DataConfiguration)) return false;
- final DataConfiguration other = (DataConfiguration)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
- if (this.getX() != other.getX()) return false;
+ final DataConfiguration other = (DataConfiguration) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ if (this.x != other.x) return false;
return true;
}
@java.lang.SuppressWarnings("all")
@@ -27,12 +27,12 @@ class DataConfiguration {
public int hashCode() {
final int PRIME = 59;
int result = 1;
- result = result * PRIME + this.getX();
+ result = result * PRIME + this.x;
return result;
}
@java.lang.Override
@java.lang.SuppressWarnings("all")
public java.lang.String toString() {
- return "DataConfiguration(x=" + this.getX() + ")";
+ return "DataConfiguration(x=" + this.x + ")";
}
}
diff --git a/test/transform/resource/after-delombok/DataExtended.java b/test/transform/resource/after-delombok/DataExtended.java
index 6a5e7fa2..bcbf2293 100644
--- a/test/transform/resource/after-delombok/DataExtended.java
+++ b/test/transform/resource/after-delombok/DataExtended.java
@@ -16,8 +16,8 @@ class DataExtended {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof DataExtended)) return false;
- final DataExtended other = (DataExtended)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final DataExtended other = (DataExtended) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getX() != other.getX()) return false;
return true;
}
@@ -38,4 +38,4 @@ class DataExtended {
public java.lang.String toString() {
return "DataExtended(x=" + this.x + ")";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DataIgnore.java b/test/transform/resource/after-delombok/DataIgnore.java
index 922de01b..309d8150 100644
--- a/test/transform/resource/after-delombok/DataIgnore.java
+++ b/test/transform/resource/after-delombok/DataIgnore.java
@@ -1,7 +1,6 @@
class DataIgnore {
final int x;
String $name;
- @java.beans.ConstructorProperties({"x"})
@java.lang.SuppressWarnings("all")
public DataIgnore(final int x) {
this.x = x;
@@ -15,8 +14,8 @@ class DataIgnore {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof DataIgnore)) return false;
- final DataIgnore other = (DataIgnore)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final DataIgnore other = (DataIgnore) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getX() != other.getX()) return false;
return true;
}
@@ -37,4 +36,4 @@ class DataIgnore {
public java.lang.String toString() {
return "DataIgnore(x=" + this.getX() + ")";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DataOnEnum.java b/test/transform/resource/after-delombok/DataOnEnum.java
index 5cfe8823..2486646b 100644
--- a/test/transform/resource/after-delombok/DataOnEnum.java
+++ b/test/transform/resource/after-delombok/DataOnEnum.java
@@ -14,4 +14,4 @@ public enum DataOnEnum {
private DataOnEnum(final String someField) {
this.someField = someField;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DataOnLocalClass.java b/test/transform/resource/after-delombok/DataOnLocalClass.java
index 5d73e584..84817897 100644
--- a/test/transform/resource/after-delombok/DataOnLocalClass.java
+++ b/test/transform/resource/after-delombok/DataOnLocalClass.java
@@ -24,8 +24,8 @@ class DataOnLocalClass1 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Local)) return false;
- final Local other = (Local)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final Local other = (Local) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getX() != other.getX()) return false;
final java.lang.Object this$name = this.getName();
final java.lang.Object other$name = other.getName();
@@ -43,7 +43,7 @@ class DataOnLocalClass1 {
int result = 1;
result = result * PRIME + this.getX();
final java.lang.Object $name = this.getName();
- result = result * PRIME + ($name == null ? 0 : $name.hashCode());
+ result = result * PRIME + ($name == null ? 43 : $name.hashCode());
return result;
}
@java.lang.Override
@@ -85,8 +85,8 @@ class DataOnLocalClass2 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Local.InnerLocal)) return false;
- final InnerLocal other = (InnerLocal)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final Local.InnerLocal other = (Local.InnerLocal) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
final java.lang.Object this$name = this.getName();
final java.lang.Object other$name = other.getName();
if (this$name == null ? other$name != null : !this$name.equals(other$name)) return false;
@@ -102,7 +102,7 @@ class DataOnLocalClass2 {
final int PRIME = 59;
int result = 1;
final java.lang.Object $name = this.getName();
- result = result * PRIME + ($name == null ? 0 : $name.hashCode());
+ result = result * PRIME + ($name == null ? 43 : $name.hashCode());
return result;
}
@java.lang.Override
@@ -124,8 +124,8 @@ class DataOnLocalClass2 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Local)) return false;
- final Local other = (Local)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final Local other = (Local) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getX() != other.getX()) return false;
return true;
}
@@ -148,4 +148,4 @@ class DataOnLocalClass2 {
}
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DataPlain.java b/test/transform/resource/after-delombok/DataPlain.java
index 8988dc6f..d54baef1 100644
--- a/test/transform/resource/after-delombok/DataPlain.java
+++ b/test/transform/resource/after-delombok/DataPlain.java
@@ -1,7 +1,6 @@
class Data1 {
final int x;
String name;
- @java.beans.ConstructorProperties({"x"})
@java.lang.SuppressWarnings("all")
public Data1(final int x) {
this.x = x;
@@ -23,8 +22,8 @@ class Data1 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Data1)) return false;
- final Data1 other = (Data1)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final Data1 other = (Data1) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getX() != other.getX()) return false;
final java.lang.Object this$name = this.getName();
final java.lang.Object other$name = other.getName();
@@ -42,7 +41,7 @@ class Data1 {
int result = 1;
result = result * PRIME + this.getX();
final java.lang.Object $name = this.getName();
- result = result * PRIME + ($name == null ? 0 : $name.hashCode());
+ result = result * PRIME + ($name == null ? 43 : $name.hashCode());
return result;
}
@java.lang.Override
@@ -54,7 +53,6 @@ class Data1 {
class Data2 {
final int x;
String name;
- @java.beans.ConstructorProperties({"x"})
@java.lang.SuppressWarnings("all")
public Data2(final int x) {
this.x = x;
@@ -76,8 +74,8 @@ class Data2 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Data2)) return false;
- final Data2 other = (Data2)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final Data2 other = (Data2) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getX() != other.getX()) return false;
final java.lang.Object this$name = this.getName();
final java.lang.Object other$name = other.getName();
@@ -95,7 +93,7 @@ class Data2 {
int result = 1;
result = result * PRIME + this.getX();
final java.lang.Object $name = this.getName();
- result = result * PRIME + ($name == null ? 0 : $name.hashCode());
+ result = result * PRIME + ($name == null ? 43 : $name.hashCode());
return result;
}
@java.lang.Override
@@ -107,7 +105,6 @@ class Data2 {
final class Data3 {
final int x;
String name;
- @java.beans.ConstructorProperties({"x"})
@java.lang.SuppressWarnings("all")
public Data3(final int x) {
this.x = x;
@@ -129,7 +126,7 @@ final class Data3 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Data3)) return false;
- final Data3 other = (Data3)o;
+ final Data3 other = (Data3) o;
if (this.getX() != other.getX()) return false;
final java.lang.Object this$name = this.getName();
final java.lang.Object other$name = other.getName();
@@ -143,7 +140,7 @@ final class Data3 {
int result = 1;
result = result * PRIME + this.getX();
final java.lang.Object $name = this.getName();
- result = result * PRIME + ($name == null ? 0 : $name.hashCode());
+ result = result * PRIME + ($name == null ? 43 : $name.hashCode());
return result;
}
@java.lang.Override
@@ -174,8 +171,8 @@ final class Data4 extends java.util.Timer {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Data4)) return false;
- final Data4 other = (Data4)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final Data4 other = (Data4) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (!super.equals(o)) return false;
if (this.getX() != other.getX()) return false;
return true;
@@ -188,8 +185,7 @@ final class Data4 extends java.util.Timer {
@java.lang.SuppressWarnings("all")
public int hashCode() {
final int PRIME = 59;
- int result = 1;
- result = result * PRIME + super.hashCode();
+ int result = super.hashCode();
result = result * PRIME + this.getX();
return result;
}
@@ -203,8 +199,8 @@ class Data5 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Data5)) return false;
- final Data5 other = (Data5)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final Data5 other = (Data5) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
return true;
}
@java.lang.SuppressWarnings("all")
@@ -245,4 +241,4 @@ final class Data6 {
public java.lang.String toString() {
return "Data6()";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DataWithGetter.java b/test/transform/resource/after-delombok/DataWithGetter.java
index 91f392ec..b4107bb3 100644
--- a/test/transform/resource/after-delombok/DataWithGetter.java
+++ b/test/transform/resource/after-delombok/DataWithGetter.java
@@ -2,7 +2,6 @@ class DataWithGetter {
private int x;
private int y;
private final String z;
- @java.beans.ConstructorProperties({"z"})
@java.lang.SuppressWarnings("all")
public DataWithGetter(final String z) {
this.z = z;
@@ -20,8 +19,8 @@ class DataWithGetter {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof DataWithGetter)) return false;
- final DataWithGetter other = (DataWithGetter)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final DataWithGetter other = (DataWithGetter) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getX() != other.getX()) return false;
if (this.getY() != other.getY()) return false;
final java.lang.Object this$z = this.getZ();
@@ -41,7 +40,7 @@ class DataWithGetter {
result = result * PRIME + this.getX();
result = result * PRIME + this.getY();
final java.lang.Object $z = this.getZ();
- result = result * PRIME + ($z == null ? 0 : $z.hashCode());
+ result = result * PRIME + ($z == null ? 43 : $z.hashCode());
return result;
}
@java.lang.Override
@@ -61,4 +60,4 @@ class DataWithGetter {
public String getZ() {
return this.z;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DataWithGetterNone.java b/test/transform/resource/after-delombok/DataWithGetterNone.java
index 5986ee9f..4467e407 100644
--- a/test/transform/resource/after-delombok/DataWithGetterNone.java
+++ b/test/transform/resource/after-delombok/DataWithGetterNone.java
@@ -2,7 +2,6 @@ class DataWithGetterNone {
private int x;
private int y;
private final String z;
- @java.beans.ConstructorProperties({"z"})
@java.lang.SuppressWarnings("all")
public DataWithGetterNone(final String z) {
this.z = z;
@@ -20,8 +19,8 @@ class DataWithGetterNone {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof DataWithGetterNone)) return false;
- final DataWithGetterNone other = (DataWithGetterNone)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final DataWithGetterNone other = (DataWithGetterNone) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.x != other.x) return false;
if (this.y != other.y) return false;
final java.lang.Object this$z = this.z;
@@ -41,7 +40,7 @@ class DataWithGetterNone {
result = result * PRIME + this.x;
result = result * PRIME + this.y;
final java.lang.Object $z = this.z;
- result = result * PRIME + ($z == null ? 0 : $z.hashCode());
+ result = result * PRIME + ($z == null ? 43 : $z.hashCode());
return result;
}
@java.lang.Override
@@ -49,4 +48,4 @@ class DataWithGetterNone {
public java.lang.String toString() {
return "DataWithGetterNone(x=" + this.x + ", y=" + this.y + ", z=" + this.z + ")";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DelegateOnGetter.java b/test/transform/resource/after-delombok/DelegateOnGetter.java
index e8d01a49..f41259df 100644
--- a/test/transform/resource/after-delombok/DelegateOnGetter.java
+++ b/test/transform/resource/after-delombok/DelegateOnGetter.java
@@ -11,7 +11,7 @@ class DelegateOnGetter {
synchronized (this.bar) {
value = this.bar.get();
if (value == null) {
- final Bar actualValue = new Bar(){
+ final Bar actualValue = new Bar() {
public void setList(java.util.ArrayList<String> list) {
}
public int getInt() {
@@ -23,7 +23,7 @@ class DelegateOnGetter {
}
}
}
- return (Bar)(value == this.bar ? null : value);
+ return (Bar) (value == this.bar ? null : value);
}
@java.lang.SuppressWarnings("all")
public void setList(final java.util.ArrayList<java.lang.String> list) {
@@ -33,4 +33,4 @@ class DelegateOnGetter {
public int getInt() {
return this.getBar().getInt();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DelegateOnGetterNone.java b/test/transform/resource/after-delombok/DelegateOnGetterNone.java
index 9f9411f4..1f6eb5be 100644
--- a/test/transform/resource/after-delombok/DelegateOnGetterNone.java
+++ b/test/transform/resource/after-delombok/DelegateOnGetterNone.java
@@ -12,4 +12,4 @@ class DelegateOnGetterNone {
public int getInt() {
return this.bar.getInt();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DelegateOnMethods.java b/test/transform/resource/after-delombok/DelegateOnMethods.java
index b900f140..eb94c6d2 100644
--- a/test/transform/resource/after-delombok/DelegateOnMethods.java
+++ b/test/transform/resource/after-delombok/DelegateOnMethods.java
@@ -6,7 +6,9 @@ abstract class DelegateOnMethods {
}
@java.lang.SuppressWarnings("all")
+
+
public void bar(final java.util.ArrayList<java.lang.String> list) {
this.getBar().bar(list);
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DelegateTypesAndExcludes.java b/test/transform/resource/after-delombok/DelegateTypesAndExcludes.java
index 3f6f555d..921669c7 100644
--- a/test/transform/resource/after-delombok/DelegateTypesAndExcludes.java
+++ b/test/transform/resource/after-delombok/DelegateTypesAndExcludes.java
@@ -24,12 +24,16 @@ class DelegatePlain {
}
@java.lang.SuppressWarnings("all")
+
+
public void bar(final java.util.ArrayList<java.lang.String> list) {
this.bar.bar(list);
}
@java.lang.SuppressWarnings("all")
+
+
public void foo() {
this.foo.foo();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DelegateWithDeprecated.java b/test/transform/resource/after-delombok/DelegateWithDeprecated.java
index f7bd1e6d..f487dc87 100644
--- a/test/transform/resource/after-delombok/DelegateWithDeprecated.java
+++ b/test/transform/resource/after-delombok/DelegateWithDeprecated.java
@@ -23,4 +23,4 @@ class DelegateWithDeprecated {
public void notDeprecated() {
this.bar.notDeprecated();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/DelegateWithVarargs.java b/test/transform/resource/after-delombok/DelegateWithVarargs.java
new file mode 100644
index 00000000..dadbb4ee
--- /dev/null
+++ b/test/transform/resource/after-delombok/DelegateWithVarargs.java
@@ -0,0 +1,25 @@
+class DelegateWithVarargs {
+ private Bar bar;
+ private interface Bar {
+ void justOneParameter(int... varargs);
+ void multipleParameters(String first, int... varargs);
+ void array(int[] array);
+ void arrayVarargs(int[]... arrayVarargs);
+ }
+ @java.lang.SuppressWarnings("all")
+ public void justOneParameter(final int... varargs) {
+ this.bar.justOneParameter(varargs);
+ }
+ @java.lang.SuppressWarnings("all")
+ public void multipleParameters(final java.lang.String first, final int... varargs) {
+ this.bar.multipleParameters(first, varargs);
+ }
+ @java.lang.SuppressWarnings("all")
+ public void array(final int[] array) {
+ this.bar.array(array);
+ }
+ @java.lang.SuppressWarnings("all")
+ public void arrayVarargs(final int[]... arrayVarargs) {
+ this.bar.arrayVarargs(arrayVarargs);
+ }
+}
diff --git a/test/transform/resource/after-delombok/EncodingUsAscii.java b/test/transform/resource/after-delombok/EncodingUsAscii.java
new file mode 100644
index 00000000..ec352056
--- /dev/null
+++ b/test/transform/resource/after-delombok/EncodingUsAscii.java
@@ -0,0 +1,9 @@
+//ENCODING: US-ASCII
+class EncodingUsAscii {
+ String foo\u0e51\u0e51 = "\016\t\b ";
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "EncodingUsAscii(foo\u0e51\u0e51=" + this.foo\u0e51\u0e51 + ")";
+ }
+}
diff --git a/test/transform/resource/after-delombok/EncodingUtf8.java b/test/transform/resource/after-delombok/EncodingUtf8.java
new file mode 100644
index 00000000..1c7751b5
--- /dev/null
+++ b/test/transform/resource/after-delombok/EncodingUtf8.java
@@ -0,0 +1,8 @@
+class EncodingUtf8 {
+ String foo๑๑ = "\016\t\b ";
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "EncodingUtf8(foo๑๑=" + this.foo๑๑ + ")";
+ }
+}
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCode.java b/test/transform/resource/after-delombok/EqualsAndHashCode.java
index 02ca2c42..eed77b39 100644
--- a/test/transform/resource/after-delombok/EqualsAndHashCode.java
+++ b/test/transform/resource/after-delombok/EqualsAndHashCode.java
@@ -9,8 +9,8 @@ class EqualsAndHashCode {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof EqualsAndHashCode)) return false;
- final EqualsAndHashCode other = (EqualsAndHashCode)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final EqualsAndHashCode other = (EqualsAndHashCode) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.x != other.x) return false;
if (!java.util.Arrays.equals(this.y, other.y)) return false;
if (!java.util.Arrays.deepEquals(this.z, other.z)) return false;
@@ -35,9 +35,9 @@ class EqualsAndHashCode {
result = result * PRIME + java.util.Arrays.hashCode(this.y);
result = result * PRIME + java.util.Arrays.deepHashCode(this.z);
final java.lang.Object $a = this.a;
- result = result * PRIME + ($a == null ? 0 : $a.hashCode());
+ result = result * PRIME + ($a == null ? 43 : $a.hashCode());
final java.lang.Object $b = this.b;
- result = result * PRIME + ($b == null ? 0 : $b.hashCode());
+ result = result * PRIME + ($b == null ? 43 : $b.hashCode());
return result;
}
}
@@ -52,7 +52,7 @@ final class EqualsAndHashCode2 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof EqualsAndHashCode2)) return false;
- final EqualsAndHashCode2 other = (EqualsAndHashCode2)o;
+ final EqualsAndHashCode2 other = (EqualsAndHashCode2) o;
if (this.x != other.x) return false;
if (this.y != other.y) return false;
if (java.lang.Float.compare(this.f, other.f) != 0) return false;
@@ -67,10 +67,10 @@ final class EqualsAndHashCode2 {
int result = 1;
result = result * PRIME + this.x;
final long $y = this.y;
- result = result * PRIME + (int)($y >>> 32 ^ $y);
+ result = result * PRIME + (int) ($y >>> 32 ^ $y);
result = result * PRIME + java.lang.Float.floatToIntBits(this.f);
final long $d = java.lang.Double.doubleToLongBits(this.d);
- result = result * PRIME + (int)($d >>> 32 ^ $d);
+ result = result * PRIME + (int) ($d >>> 32 ^ $d);
result = result * PRIME + (this.b ? 79 : 97);
return result;
}
@@ -81,8 +81,8 @@ final class EqualsAndHashCode3 extends EqualsAndHashCode {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof EqualsAndHashCode3)) return false;
- final EqualsAndHashCode3 other = (EqualsAndHashCode3)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final EqualsAndHashCode3 other = (EqualsAndHashCode3) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
return true;
}
@java.lang.SuppressWarnings("all")
@@ -102,8 +102,8 @@ class EqualsAndHashCode4 extends EqualsAndHashCode {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof EqualsAndHashCode4)) return false;
- final EqualsAndHashCode4 other = (EqualsAndHashCode4)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final EqualsAndHashCode4 other = (EqualsAndHashCode4) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (!super.equals(o)) return false;
return true;
}
@@ -114,9 +114,7 @@ class EqualsAndHashCode4 extends EqualsAndHashCode {
@java.lang.Override
@java.lang.SuppressWarnings("all")
public int hashCode() {
- final int PRIME = 59;
- int result = 1;
- result = result * PRIME + super.hashCode();
+ int result = super.hashCode();
return result;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCodeConfigKeys1.java b/test/transform/resource/after-delombok/EqualsAndHashCodeConfigKeys1.java
new file mode 100644
index 00000000..82a5a42d
--- /dev/null
+++ b/test/transform/resource/after-delombok/EqualsAndHashCodeConfigKeys1.java
@@ -0,0 +1,46 @@
+class EqualsAndHashCodeConfigKeys1Parent {
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeConfigKeys1Parent)) return false;
+ final EqualsAndHashCodeConfigKeys1Parent other = (EqualsAndHashCodeConfigKeys1Parent) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof EqualsAndHashCodeConfigKeys1Parent;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ int result = 1;
+ return result;
+ }
+}
+class EqualsAndHashCodeConfigKeys1 extends EqualsAndHashCodeConfigKeys1Parent {
+ int x;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeConfigKeys1)) return false;
+ final EqualsAndHashCodeConfigKeys1 other = (EqualsAndHashCodeConfigKeys1) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ if (this.x != other.x) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof EqualsAndHashCodeConfigKeys1;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = result * PRIME + this.x;
+ return result;
+ }
+}
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCodeConfigKeys2.java b/test/transform/resource/after-delombok/EqualsAndHashCodeConfigKeys2.java
new file mode 100644
index 00000000..c46c7f1c
--- /dev/null
+++ b/test/transform/resource/after-delombok/EqualsAndHashCodeConfigKeys2.java
@@ -0,0 +1,68 @@
+class EqualsAndHashCodeConfigKeys2Object extends Object {
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeConfigKeys2Object)) return false;
+ final EqualsAndHashCodeConfigKeys2Object other = (EqualsAndHashCodeConfigKeys2Object) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof EqualsAndHashCodeConfigKeys2Object;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ int result = 1;
+ return result;
+ }
+}
+class EqualsAndHashCodeConfigKeys2Parent {
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeConfigKeys2Parent)) return false;
+ final EqualsAndHashCodeConfigKeys2Parent other = (EqualsAndHashCodeConfigKeys2Parent) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof EqualsAndHashCodeConfigKeys2Parent;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ int result = 1;
+ return result;
+ }
+}
+class EqualsAndHashCodeConfigKeys2 extends EqualsAndHashCodeConfigKeys2Parent {
+ int x;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeConfigKeys2)) return false;
+ final EqualsAndHashCodeConfigKeys2 other = (EqualsAndHashCodeConfigKeys2) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ if (!super.equals(o)) return false;
+ if (this.x != other.x) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof EqualsAndHashCodeConfigKeys2;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = super.hashCode();
+ result = result * PRIME + this.x;
+ return result;
+ }
+}
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCodeNestedShadow.java b/test/transform/resource/after-delombok/EqualsAndHashCodeNestedShadow.java
new file mode 100644
index 00000000..0b479c2d
--- /dev/null
+++ b/test/transform/resource/after-delombok/EqualsAndHashCodeNestedShadow.java
@@ -0,0 +1,50 @@
+interface EqualsAndHashCodeNestedShadow {
+ interface Foo {
+ }
+ class Bar {
+ public static class Foo extends Bar implements EqualsAndHashCodeNestedShadow.Foo {
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeNestedShadow.Bar.Foo)) return false;
+ final EqualsAndHashCodeNestedShadow.Bar.Foo other = (EqualsAndHashCodeNestedShadow.Bar.Foo) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof EqualsAndHashCodeNestedShadow.Bar.Foo;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ int result = 1;
+ return result;
+ }
+ }
+ }
+ class Baz {
+ public static class Foo<T> extends Bar implements EqualsAndHashCodeNestedShadow.Foo {
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeNestedShadow.Baz.Foo)) return false;
+ final EqualsAndHashCodeNestedShadow.Baz.Foo<?> other = (EqualsAndHashCodeNestedShadow.Baz.Foo<?>) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof EqualsAndHashCodeNestedShadow.Baz.Foo;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ int result = 1;
+ return result;
+ }
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCodeOfAndExclude.java b/test/transform/resource/after-delombok/EqualsAndHashCodeOfAndExclude.java
new file mode 100644
index 00000000..895da4db
--- /dev/null
+++ b/test/transform/resource/after-delombok/EqualsAndHashCodeOfAndExclude.java
@@ -0,0 +1,42 @@
+final class EqualsAndHashCodeOf {
+ int x;
+ int y;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeOf)) return false;
+ final EqualsAndHashCodeOf other = (EqualsAndHashCodeOf) o;
+ if (this.x != other.x) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = result * PRIME + this.x;
+ return result;
+ }
+}
+final class EqualsAndHashCodeExclude {
+ int x;
+ int y;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeExclude)) return false;
+ final EqualsAndHashCodeExclude other = (EqualsAndHashCodeExclude) o;
+ if (this.x != other.x) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = result * PRIME + this.x;
+ return result;
+ }
+}
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCodeWithExistingMethods.java b/test/transform/resource/after-delombok/EqualsAndHashCodeWithExistingMethods.java
index ac189f42..dcad0263 100644
--- a/test/transform/resource/after-delombok/EqualsAndHashCodeWithExistingMethods.java
+++ b/test/transform/resource/after-delombok/EqualsAndHashCodeWithExistingMethods.java
@@ -20,8 +20,8 @@ final class EqualsAndHashCodeWithExistingMethods3 extends EqualsAndHashCodeWithE
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof EqualsAndHashCodeWithExistingMethods3)) return false;
- final EqualsAndHashCodeWithExistingMethods3 other = (EqualsAndHashCodeWithExistingMethods3)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final EqualsAndHashCodeWithExistingMethods3 other = (EqualsAndHashCodeWithExistingMethods3) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (!super.equals(o)) return false;
if (this.x != other.x) return false;
return true;
@@ -30,9 +30,8 @@ final class EqualsAndHashCodeWithExistingMethods3 extends EqualsAndHashCodeWithE
@java.lang.SuppressWarnings("all")
public int hashCode() {
final int PRIME = 59;
- int result = 1;
- result = result * PRIME + super.hashCode();
+ int result = super.hashCode();
result = result * PRIME + this.x;
return result;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCodeWithGenericsOnInners.java b/test/transform/resource/after-delombok/EqualsAndHashCodeWithGenericsOnInners.java
new file mode 100644
index 00000000..501d45a1
--- /dev/null
+++ b/test/transform/resource/after-delombok/EqualsAndHashCodeWithGenericsOnInners.java
@@ -0,0 +1,28 @@
+public class EqualsAndHashCodeWithGenericsOnInners<A> {
+ class Inner<B> {
+ int x;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof EqualsAndHashCodeWithGenericsOnInners.Inner)) return false;
+ final EqualsAndHashCodeWithGenericsOnInners<?>.Inner<?> other = (EqualsAndHashCodeWithGenericsOnInners<?>.Inner<?>) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ if (this.x != other.x) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof EqualsAndHashCodeWithGenericsOnInners.Inner;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = result * PRIME + this.x;
+ return result;
+ }
+ }
+}
+
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCodeWithOnParam.java b/test/transform/resource/after-delombok/EqualsAndHashCodeWithOnParam.java
index d8d8b025..91c62b0f 100644
--- a/test/transform/resource/after-delombok/EqualsAndHashCodeWithOnParam.java
+++ b/test/transform/resource/after-delombok/EqualsAndHashCodeWithOnParam.java
@@ -12,8 +12,8 @@ class EqualsAndHashCodeWithOnParam {
public boolean equals(@Nullable final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof EqualsAndHashCodeWithOnParam)) return false;
- final EqualsAndHashCodeWithOnParam other = (EqualsAndHashCodeWithOnParam)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final EqualsAndHashCodeWithOnParam other = (EqualsAndHashCodeWithOnParam) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.x != other.x) return false;
if (!java.util.Arrays.equals(this.y, other.y)) return false;
if (!java.util.Arrays.deepEquals(this.z, other.z)) return false;
@@ -38,9 +38,9 @@ class EqualsAndHashCodeWithOnParam {
result = result * PRIME + java.util.Arrays.hashCode(this.y);
result = result * PRIME + java.util.Arrays.deepHashCode(this.z);
final java.lang.Object $a = this.a;
- result = result * PRIME + ($a == null ? 0 : $a.hashCode());
+ result = result * PRIME + ($a == null ? 43 : $a.hashCode());
final java.lang.Object $b = this.b;
- result = result * PRIME + ($b == null ? 0 : $b.hashCode());
+ result = result * PRIME + ($b == null ? 43 : $b.hashCode());
return result;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/EqualsAndHashCodeWithSomeExistingMethods.java b/test/transform/resource/after-delombok/EqualsAndHashCodeWithSomeExistingMethods.java
index 37eeb8df..b3a1fb0d 100644
--- a/test/transform/resource/after-delombok/EqualsAndHashCodeWithSomeExistingMethods.java
+++ b/test/transform/resource/after-delombok/EqualsAndHashCodeWithSomeExistingMethods.java
@@ -28,8 +28,8 @@ class EqualsAndHashCodeWithSomeExistingMethods2 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof EqualsAndHashCodeWithSomeExistingMethods2)) return false;
- final EqualsAndHashCodeWithSomeExistingMethods2 other = (EqualsAndHashCodeWithSomeExistingMethods2)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final EqualsAndHashCodeWithSomeExistingMethods2 other = (EqualsAndHashCodeWithSomeExistingMethods2) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.x != other.x) return false;
return true;
}
@@ -75,8 +75,8 @@ class EqualsAndHashCodeWithNoExistingMethods {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof EqualsAndHashCodeWithNoExistingMethods)) return false;
- final EqualsAndHashCodeWithNoExistingMethods other = (EqualsAndHashCodeWithNoExistingMethods)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final EqualsAndHashCodeWithNoExistingMethods other = (EqualsAndHashCodeWithNoExistingMethods) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.x != other.x) return false;
return true;
}
diff --git a/test/transform/resource/after-delombok/ExtensionMethodPlain.java b/test/transform/resource/after-delombok/ExtensionMethodPlain.java
index 707a0258..4a3cc347 100644
--- a/test/transform/resource/after-delombok/ExtensionMethodPlain.java
+++ b/test/transform/resource/after-delombok/ExtensionMethodPlain.java
@@ -14,4 +14,4 @@ class ExtensionMethodPlain {
return "" + Character.toTitleCase(in.charAt(0)) + in.substring(1).toLowerCase();
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/FieldDefaults.java b/test/transform/resource/after-delombok/FieldDefaults.java
index 8a84f442..19fb9d39 100644
--- a/test/transform/resource/after-delombok/FieldDefaults.java
+++ b/test/transform/resource/after-delombok/FieldDefaults.java
@@ -1,4 +1,5 @@
class FieldDefaults1 {
+ static int STATIC = 3;
final int x;
int y;
FieldDefaults1(int x) {
@@ -6,6 +7,7 @@ class FieldDefaults1 {
}
}
class FieldDefaults2 {
+ static int STATIC = 3;
int x;
private int y;
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/FieldDefaultsNoop.java b/test/transform/resource/after-delombok/FieldDefaultsNoop.java
index 275fa0e7..59c377ed 100644
--- a/test/transform/resource/after-delombok/FieldDefaultsNoop.java
+++ b/test/transform/resource/after-delombok/FieldDefaultsNoop.java
@@ -1,2 +1,2 @@
class FieldDefaultsNoop {
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/FieldDefaultsViaConfig.java b/test/transform/resource/after-delombok/FieldDefaultsViaConfig.java
new file mode 100644
index 00000000..96191005
--- /dev/null
+++ b/test/transform/resource/after-delombok/FieldDefaultsViaConfig.java
@@ -0,0 +1,11 @@
+class FieldDefaultsViaConfig1 {
+ private final int x;
+ private int y;
+ FieldDefaultsViaConfig1(int x) {
+ this.x = x;
+ }
+}
+class FieldDefaultsViaConfig2 {
+ final int x = 2;
+ protected final int y = 0;
+}
diff --git a/test/transform/resource/after-delombok/FieldDefaultsViaConfigAndRequiredArgsConstructor.java b/test/transform/resource/after-delombok/FieldDefaultsViaConfigAndRequiredArgsConstructor.java
new file mode 100644
index 00000000..959bb1e0
--- /dev/null
+++ b/test/transform/resource/after-delombok/FieldDefaultsViaConfigAndRequiredArgsConstructor.java
@@ -0,0 +1,7 @@
+class FieldDefaultsViaConfigAndRequiredArgsConstructor {
+ final int x;
+ @java.lang.SuppressWarnings("all")
+ public FieldDefaultsViaConfigAndRequiredArgsConstructor(final int x) {
+ this.x = x;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GenerateSuppressFBWarnings.java b/test/transform/resource/after-delombok/GenerateSuppressFBWarnings.java
new file mode 100644
index 00000000..e78ee55c
--- /dev/null
+++ b/test/transform/resource/after-delombok/GenerateSuppressFBWarnings.java
@@ -0,0 +1,9 @@
+//VERSION 7:
+class GenerateSuppressFBWarnings {
+ int y;
+ @java.lang.SuppressWarnings("all")
+ @edu.umd.cs.findbugs.annotations.SuppressFBWarnings(justification = "generated code")
+ public int getY() {
+ return this.y;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GeneratedJavaxOff.java b/test/transform/resource/after-delombok/GeneratedJavaxOff.java
new file mode 100644
index 00000000..ca50f3d2
--- /dev/null
+++ b/test/transform/resource/after-delombok/GeneratedJavaxOff.java
@@ -0,0 +1,7 @@
+class GeneratedJavaxOff {
+ int x;
+ @java.lang.SuppressWarnings("all")
+ public int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GeneratedJavaxOnLombokOn.java b/test/transform/resource/after-delombok/GeneratedJavaxOnLombokOn.java
new file mode 100644
index 00000000..2ca96e7c
--- /dev/null
+++ b/test/transform/resource/after-delombok/GeneratedJavaxOnLombokOn.java
@@ -0,0 +1,10 @@
+//version :8
+class GeneratedJavaxOnLombokOn {
+ int x;
+ @java.lang.SuppressWarnings("all")
+ @javax.annotation.Generated("lombok")
+ @lombok.Generated
+ public int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GeneratedOff.java b/test/transform/resource/after-delombok/GeneratedOff.java
new file mode 100644
index 00000000..0e4ecf7d
--- /dev/null
+++ b/test/transform/resource/after-delombok/GeneratedOff.java
@@ -0,0 +1,7 @@
+class GeneratedOff {
+ int x;
+ @java.lang.SuppressWarnings("all")
+ public int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GeneratedOffJavaxOn.java b/test/transform/resource/after-delombok/GeneratedOffJavaxOn.java
new file mode 100644
index 00000000..4b10c708
--- /dev/null
+++ b/test/transform/resource/after-delombok/GeneratedOffJavaxOn.java
@@ -0,0 +1,9 @@
+//version :8
+class GeneratedOffJavaxOn {
+ int x;
+ @java.lang.SuppressWarnings("all")
+ @javax.annotation.Generated("lombok")
+ public int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GeneratedOffLombokOn.java b/test/transform/resource/after-delombok/GeneratedOffLombokOn.java
new file mode 100644
index 00000000..03e23d66
--- /dev/null
+++ b/test/transform/resource/after-delombok/GeneratedOffLombokOn.java
@@ -0,0 +1,8 @@
+class GeneratedOffLombokOn {
+ int x;
+ @java.lang.SuppressWarnings("all")
+ @lombok.Generated
+ public int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GetterAccessLevel.java b/test/transform/resource/after-delombok/GetterAccessLevel.java
index 6d977d87..2574340a 100644
--- a/test/transform/resource/after-delombok/GetterAccessLevel.java
+++ b/test/transform/resource/after-delombok/GetterAccessLevel.java
@@ -46,4 +46,4 @@ class GetterAccessLevel {
public String getValue() {
return this.value;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterAlreadyExists.java b/test/transform/resource/after-delombok/GetterAlreadyExists.java
index 8389ae31..d7f32ff1 100644
--- a/test/transform/resource/after-delombok/GetterAlreadyExists.java
+++ b/test/transform/resource/after-delombok/GetterAlreadyExists.java
@@ -145,4 +145,4 @@ class Getter18 {
static String getFoo() {
return "";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterBoolean.java b/test/transform/resource/after-delombok/GetterBoolean.java
index 42b4319d..6ac91512 100644
--- a/test/transform/resource/after-delombok/GetterBoolean.java
+++ b/test/transform/resource/after-delombok/GetterBoolean.java
@@ -30,4 +30,4 @@ class YetMoreGetter {
boolean getFoo() {
return true;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterDeprecated.java b/test/transform/resource/after-delombok/GetterDeprecated.java
index 09ea9929..af123509 100644
--- a/test/transform/resource/after-delombok/GetterDeprecated.java
+++ b/test/transform/resource/after-delombok/GetterDeprecated.java
@@ -18,4 +18,4 @@ class GetterDeprecated {
public int getJavadoc() {
return this.javadoc;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterEnum.java b/test/transform/resource/after-delombok/GetterEnum.java
index 3c6e6e0c..272a2ee6 100644
--- a/test/transform/resource/after-delombok/GetterEnum.java
+++ b/test/transform/resource/after-delombok/GetterEnum.java
@@ -15,4 +15,4 @@ enum GetterEnum {
public String getName() {
return this.name;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterLazy.java b/test/transform/resource/after-delombok/GetterLazy.java
index 4f6f2c03..25a71848 100644
--- a/test/transform/resource/after-delombok/GetterLazy.java
+++ b/test/transform/resource/after-delombok/GetterLazy.java
@@ -15,6 +15,6 @@ class GetterLazy {
}
}
}
- return (ValueType)(value == this.fieldName ? null : value);
+ return (ValueType) (value == this.fieldName ? null : value);
}
}
diff --git a/test/transform/resource/after-delombok/GetterLazyBoolean.java b/test/transform/resource/after-delombok/GetterLazyBoolean.java
index f684fc07..3ca127e3 100644
--- a/test/transform/resource/after-delombok/GetterLazyBoolean.java
+++ b/test/transform/resource/after-delombok/GetterLazyBoolean.java
@@ -9,8 +9,8 @@ class GetterLazyBoolean {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof GetterLazyBoolean)) return false;
- final GetterLazyBoolean other = (GetterLazyBoolean)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final GetterLazyBoolean other = (GetterLazyBoolean) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.isBooleanValue() != other.isBooleanValue()) return false;
return true;
}
@@ -44,7 +44,7 @@ class GetterLazyBoolean {
}
}
}
- return (java.lang.Boolean)value;
+ return (java.lang.Boolean) value;
}
@java.lang.SuppressWarnings("all")
public boolean isOtherBooleanValue() {
@@ -59,6 +59,6 @@ class GetterLazyBoolean {
}
}
}
- return (java.lang.Boolean)value;
+ return (java.lang.Boolean) value;
}
}
diff --git a/test/transform/resource/after-delombok/GetterLazyEahcToString.java b/test/transform/resource/after-delombok/GetterLazyEahcToString.java
index 65c63fba..e0a0f6b2 100644
--- a/test/transform/resource/after-delombok/GetterLazyEahcToString.java
+++ b/test/transform/resource/after-delombok/GetterLazyEahcToString.java
@@ -8,8 +8,8 @@ class GetterLazyEahcToString {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof GetterLazyEahcToString)) return false;
- final GetterLazyEahcToString other = (GetterLazyEahcToString)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final GetterLazyEahcToString other = (GetterLazyEahcToString) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
final java.lang.Object this$value = this.getValue();
final java.lang.Object other$value = other.getValue();
if (this$value == null ? other$value != null : !this$value.equals(other$value)) return false;
@@ -20,6 +20,8 @@ class GetterLazyEahcToString {
}
@java.lang.SuppressWarnings("all")
+
+
protected boolean canEqual(final java.lang.Object other) {
return other instanceof GetterLazyEahcToString;
}
@@ -30,9 +32,9 @@ class GetterLazyEahcToString {
final int PRIME = 59;
int result = 1;
final java.lang.Object $value = this.getValue();
- result = result * PRIME + ($value == null ? 0 : $value.hashCode());
+ result = result * PRIME + ($value == null ? 43 : $value.hashCode());
final java.lang.Object $value2 = this.value2;
- result = result * PRIME + ($value2 == null ? 0 : $value2.hashCode());
+ result = result * PRIME + ($value2 == null ? 43 : $value2.hashCode());
return result;
}
@@ -43,6 +45,8 @@ class GetterLazyEahcToString {
}
@java.lang.SuppressWarnings("all")
+
+
public String getValue() {
java.lang.Object value = this.value.get();
if (value == null) {
@@ -55,11 +59,11 @@ class GetterLazyEahcToString {
}
}
}
- return (String)(value == this.value ? null : value);
+ return (String) (value == this.value ? null : value);
}
@java.lang.SuppressWarnings("all")
public String getValue2() {
return this.value2;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterLazyInvalid.java b/test/transform/resource/after-delombok/GetterLazyInvalid.java
index 25963921..81d87c3c 100644
--- a/test/transform/resource/after-delombok/GetterLazyInvalid.java
+++ b/test/transform/resource/after-delombok/GetterLazyInvalid.java
@@ -22,4 +22,4 @@ class GetterLazyInvalidNoInit {
GetterLazyInvalidNoInit() {
this.fieldName = "foo";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterLazyNative.java b/test/transform/resource/after-delombok/GetterLazyNative.java
index eb31991a..b9d471ff 100644
--- a/test/transform/resource/after-delombok/GetterLazyNative.java
+++ b/test/transform/resource/after-delombok/GetterLazyNative.java
@@ -21,7 +21,7 @@ class GetterLazyNative {
}
}
}
- return (java.lang.Boolean)value;
+ return (java.lang.Boolean) value;
}
@java.lang.SuppressWarnings("all")
public byte getByteField() {
@@ -36,7 +36,7 @@ class GetterLazyNative {
}
}
}
- return (java.lang.Byte)value;
+ return (java.lang.Byte) value;
}
@java.lang.SuppressWarnings("all")
public short getShortField() {
@@ -51,7 +51,7 @@ class GetterLazyNative {
}
}
}
- return (java.lang.Short)value;
+ return (java.lang.Short) value;
}
@java.lang.SuppressWarnings("all")
public int getIntField() {
@@ -66,7 +66,7 @@ class GetterLazyNative {
}
}
}
- return (java.lang.Integer)value;
+ return (java.lang.Integer) value;
}
@java.lang.SuppressWarnings("all")
public long getLongField() {
@@ -81,7 +81,7 @@ class GetterLazyNative {
}
}
}
- return (java.lang.Long)value;
+ return (java.lang.Long) value;
}
@java.lang.SuppressWarnings("all")
public float getFloatField() {
@@ -96,7 +96,7 @@ class GetterLazyNative {
}
}
}
- return (java.lang.Float)value;
+ return (java.lang.Float) value;
}
@java.lang.SuppressWarnings("all")
public double getDoubleField() {
@@ -111,7 +111,7 @@ class GetterLazyNative {
}
}
}
- return (java.lang.Double)value;
+ return (java.lang.Double) value;
}
@java.lang.SuppressWarnings("all")
public char getCharField() {
@@ -126,7 +126,7 @@ class GetterLazyNative {
}
}
}
- return (java.lang.Character)value;
+ return (java.lang.Character) value;
}
@java.lang.SuppressWarnings("all")
public int[] getIntArrayField() {
@@ -135,12 +135,12 @@ class GetterLazyNative {
synchronized (this.intArrayField) {
value = this.intArrayField.get();
if (value == null) {
- final int[] actualValue = new int[]{1};
+ final int[] actualValue = new int[] {1};
value = actualValue == null ? this.intArrayField : actualValue;
this.intArrayField.set(value);
}
}
}
- return (int[])(value == this.intArrayField ? null : value);
+ return (int[]) (value == this.intArrayField ? null : value);
}
}
diff --git a/test/transform/resource/after-delombok/GetterLazyTransient.java b/test/transform/resource/after-delombok/GetterLazyTransient.java
new file mode 100644
index 00000000..49093ed1
--- /dev/null
+++ b/test/transform/resource/after-delombok/GetterLazyTransient.java
@@ -0,0 +1,24 @@
+class GetterLazyTransient {
+ private final java.util.concurrent.atomic.AtomicReference<java.lang.Object> nonTransientField = new java.util.concurrent.atomic.AtomicReference<java.lang.Object>();
+ private final transient int transientField = 2;
+ private final transient int nonLazyTransientField = 3;
+ @java.lang.SuppressWarnings("all")
+ public int getNonTransientField() {
+ java.lang.Object value = this.nonTransientField.get();
+ if (value == null) {
+ synchronized (this.nonTransientField) {
+ value = this.nonTransientField.get();
+ if (value == null) {
+ final int actualValue = 1;
+ value = actualValue;
+ this.nonTransientField.set(value);
+ }
+ }
+ }
+ return (java.lang.Integer) value;
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getNonLazyTransientField() {
+ return this.nonLazyTransientField;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GetterNone.java b/test/transform/resource/after-delombok/GetterNone.java
index 11b4fd09..5666f6fe 100644
--- a/test/transform/resource/after-delombok/GetterNone.java
+++ b/test/transform/resource/after-delombok/GetterNone.java
@@ -5,4 +5,4 @@ class GetterNone {
public int getI() {
return this.i;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterOnClass.java b/test/transform/resource/after-delombok/GetterOnClass.java
index bd15ce35..f0025370 100644
--- a/test/transform/resource/after-delombok/GetterOnClass.java
+++ b/test/transform/resource/after-delombok/GetterOnClass.java
@@ -56,4 +56,4 @@ class GetterOnClass6 {
public String getNonNull() {
return this.nonNull;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterOnMethodErrors.java b/test/transform/resource/after-delombok/GetterOnMethodErrors.java
index 86813bd2..a69966ec 100644
--- a/test/transform/resource/after-delombok/GetterOnMethodErrors.java
+++ b/test/transform/resource/after-delombok/GetterOnMethodErrors.java
@@ -6,4 +6,4 @@ class GetterOnMethodErrors {
public int getTest() {
return this.test;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterPlain.java b/test/transform/resource/after-delombok/GetterPlain.java
index 359d46e2..ceae2aac 100644
--- a/test/transform/resource/after-delombok/GetterPlain.java
+++ b/test/transform/resource/after-delombok/GetterPlain.java
@@ -9,4 +9,4 @@ class GetterPlain {
public int getFoo() {
return this.foo;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/GetterSetterJavadoc.java b/test/transform/resource/after-delombok/GetterSetterJavadoc.java
index 7a782434..019b3c37 100644
--- a/test/transform/resource/after-delombok/GetterSetterJavadoc.java
+++ b/test/transform/resource/after-delombok/GetterSetterJavadoc.java
@@ -29,8 +29,8 @@ class GetterSetterJavadoc1 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof GetterSetterJavadoc1)) return false;
- final GetterSetterJavadoc1 other = (GetterSetterJavadoc1)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final GetterSetterJavadoc1 other = (GetterSetterJavadoc1) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getFieldName() != other.getFieldName()) return false;
return true;
}
@@ -97,4 +97,54 @@ class GetterSetterJavadoc3 {
public void setFieldName(final int fieldName) {
this.fieldName = fieldName;
}
-} \ No newline at end of file
+}
+class GetterSetterJavadoc4 {
+ /**
+ * Some text
+ */
+ private int fieldName;
+ /**
+ * Some text
+ *
+ * @return Sky is blue4
+ */
+ @java.lang.SuppressWarnings("all")
+ public int fieldName() {
+ return this.fieldName;
+ }
+ /**
+ * Some text
+ *
+ * @param fieldName Hello, World5
+ * @return this
+ */
+ @java.lang.SuppressWarnings("all")
+ public GetterSetterJavadoc4 fieldName(final int fieldName) {
+ this.fieldName = fieldName;
+ return this;
+ }
+}
+class GetterSetterJavadoc5 {
+ /**
+ * Some text
+ */
+ private int fieldName;
+ /**
+ * Getter section
+ * @return Sky is blue5
+ */
+ @java.lang.SuppressWarnings("all")
+ public int fieldName() {
+ return this.fieldName;
+ }
+ /**
+ * Setter section
+ * @param fieldName Hello, World5
+ * @return Sky is blue5
+ */
+ @java.lang.SuppressWarnings("all")
+ public GetterSetterJavadoc5 fieldName(final int fieldName) {
+ this.fieldName = fieldName;
+ return this;
+ }
+}
diff --git a/test/transform/resource/after-delombok/GetterWithDollar.java b/test/transform/resource/after-delombok/GetterWithDollar.java
index 520f4ea5..56435665 100644
--- a/test/transform/resource/after-delombok/GetterWithDollar.java
+++ b/test/transform/resource/after-delombok/GetterWithDollar.java
@@ -16,4 +16,4 @@ class GetterWithDollar2 {
public int getI() {
return this.i;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/Helper.java b/test/transform/resource/after-delombok/Helper.java
new file mode 100644
index 00000000..64ecb492
--- /dev/null
+++ b/test/transform/resource/after-delombok/Helper.java
@@ -0,0 +1,19 @@
+class HelperTest {
+ {
+ final int z = 5;
+ if (Boolean.TRUE) {
+ class H1 {
+ void foo(int x) {
+ System.out.println("Hello, " + (x + z));
+ }
+ }
+ final H1 $H1 = new H1();
+ $H1.foo(10);
+ class H2 {
+ void bar() {
+ $H1.foo(12);
+ }
+ }
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/InjectField.java b/test/transform/resource/after-delombok/InjectField.java
index 59896400..98f9762b 100644
--- a/test/transform/resource/after-delombok/InjectField.java
+++ b/test/transform/resource/after-delombok/InjectField.java
@@ -1,10 +1,11 @@
import java.util.logging.Level;
enum InjectField1 {
- A,
- B;
+ A, B;
@java.lang.SuppressWarnings("all")
+
+
private static final java.util.logging.Logger log = java.util.logging.Logger.getLogger(InjectField1.class.getName());
@java.lang.SuppressWarnings("all")
private final java.lang.Object $lock = new java.lang.Object[0];
@@ -59,4 +60,4 @@ class InjectField3 {
static {
log.log(Level.FINE, "static initializer");
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/InnerClass.java b/test/transform/resource/after-delombok/InnerClass.java
new file mode 100644
index 00000000..6d42bb79
--- /dev/null
+++ b/test/transform/resource/after-delombok/InnerClass.java
@@ -0,0 +1,51 @@
+class A {
+ class B {
+ String s;
+ @java.lang.SuppressWarnings("all")
+ public B(final String s) {
+ this.s = s;
+ }
+ }
+}
+class C {
+ final class D {
+ private final A a;
+ A.B test(String s) {
+ return a.new B(s) {
+ };
+ }
+ @java.lang.SuppressWarnings("all")
+ public D(final A a) {
+ this.a = a;
+ }
+ @java.lang.SuppressWarnings("all")
+ public A getA() {
+ return this.a;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof C.D)) return false;
+ final C.D other = (C.D) o;
+ final java.lang.Object this$a = this.getA();
+ final java.lang.Object other$a = other.getA();
+ if (this$a == null ? other$a != null : !this$a.equals(other$a)) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ final java.lang.Object $a = this.getA();
+ result = result * PRIME + ($a == null ? 43 : $a.hashCode());
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "C.D(a=" + this.getA() + ")";
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/JavadocGenerally.java b/test/transform/resource/after-delombok/JavadocGenerally.java
index 729cdce3..ec9483bc 100644
--- a/test/transform/resource/after-delombok/JavadocGenerally.java
+++ b/test/transform/resource/after-delombok/JavadocGenerally.java
@@ -9,6 +9,9 @@ package testPackage;
class JavadocGenerally {
/**
* Doc on field
+ * <pre>
+ * // code
+ * </pre>
*/
private int someField;
/**
diff --git a/test/transform/resource/after-delombok/LoggerCommons.java b/test/transform/resource/after-delombok/LoggerCommons.java
index 32ace53a..954e730b 100644
--- a/test/transform/resource/after-delombok/LoggerCommons.java
+++ b/test/transform/resource/after-delombok/LoggerCommons.java
@@ -9,4 +9,4 @@ class LoggerCommonsWithImport {
class LoggerCommonsWithDifferentName {
@java.lang.SuppressWarnings("all")
private static final org.apache.commons.logging.Log log = org.apache.commons.logging.LogFactory.getLog("DifferentName");
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/LoggerConfig.java b/test/transform/resource/after-delombok/LoggerConfig.java
index ba955638..d0944126 100644
--- a/test/transform/resource/after-delombok/LoggerConfig.java
+++ b/test/transform/resource/after-delombok/LoggerConfig.java
@@ -1,4 +1,4 @@
class LoggerWithConfig {
@java.lang.SuppressWarnings("all")
private final org.slf4j.Logger myLogger = org.slf4j.LoggerFactory.getLogger(LoggerWithConfig.class);
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/LoggerJBossLog.java b/test/transform/resource/after-delombok/LoggerJBossLog.java
new file mode 100644
index 00000000..41c18805
--- /dev/null
+++ b/test/transform/resource/after-delombok/LoggerJBossLog.java
@@ -0,0 +1,19 @@
+class LoggerJBossLog {
+ @java.lang.SuppressWarnings("all")
+ private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger(LoggerJBossLog.class);
+}
+class LoggerJBossLogWithImport {
+ @java.lang.SuppressWarnings("all")
+ private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger(LoggerJBossLogWithImport.class);
+}
+class LoggerJBossLogOuter {
+ static class Inner {
+ @java.lang.SuppressWarnings("all")
+ private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger(Inner.class);
+ }
+}
+
+class LoggerJBossLogWithDifferentLoggerName {
+ @java.lang.SuppressWarnings("all")
+ private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger("DifferentLogger");
+}
diff --git a/test/transform/resource/after-delombok/LoggerJul.java b/test/transform/resource/after-delombok/LoggerJul.java
index ad119777..63f96733 100644
--- a/test/transform/resource/after-delombok/LoggerJul.java
+++ b/test/transform/resource/after-delombok/LoggerJul.java
@@ -9,4 +9,4 @@ class LoggerJulWithImport {
class LoggerJulWithDifferentName {
@java.lang.SuppressWarnings("all")
private static final java.util.logging.Logger log = java.util.logging.Logger.getLogger("DifferentName");
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/LoggerLog4j.java b/test/transform/resource/after-delombok/LoggerLog4j.java
index 99eac34f..7d9d4409 100644
--- a/test/transform/resource/after-delombok/LoggerLog4j.java
+++ b/test/transform/resource/after-delombok/LoggerLog4j.java
@@ -9,4 +9,4 @@ class LoggerLog4jWithImport {
class LoggerLog4jWithDifferentName {
@java.lang.SuppressWarnings("all")
private static final org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger("DifferentName");
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/LoggerLog4j2.java b/test/transform/resource/after-delombok/LoggerLog4j2.java
index 8473134b..3d8b7b5b 100644
--- a/test/transform/resource/after-delombok/LoggerLog4j2.java
+++ b/test/transform/resource/after-delombok/LoggerLog4j2.java
@@ -9,4 +9,4 @@ class LoggerLog4j2WithImport {
class LoggerLog4j2WithDifferentName {
@java.lang.SuppressWarnings("all")
private static final org.apache.logging.log4j.Logger log = org.apache.logging.log4j.LogManager.getLogger("DifferentName");
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/LoggerSlf4j.java b/test/transform/resource/after-delombok/LoggerSlf4j.java
index 3c6e6d2f..68d685f0 100644
--- a/test/transform/resource/after-delombok/LoggerSlf4j.java
+++ b/test/transform/resource/after-delombok/LoggerSlf4j.java
@@ -16,4 +16,4 @@ class LoggerSlf4jOuter {
class LoggerSlf4jWithDifferentLoggerName {
@java.lang.SuppressWarnings("all")
private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger("DifferentLogger");
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/LoggerSlf4jAlreadyExists.java b/test/transform/resource/after-delombok/LoggerSlf4jAlreadyExists.java
index a7cd9409..2b9e4bcb 100644
--- a/test/transform/resource/after-delombok/LoggerSlf4jAlreadyExists.java
+++ b/test/transform/resource/after-delombok/LoggerSlf4jAlreadyExists.java
@@ -1,3 +1,3 @@
class LoggerSlf4jAlreadyExists {
int log;
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/LoggerSlf4jTypes.java b/test/transform/resource/after-delombok/LoggerSlf4jTypes.java
index 5ea59924..6730e805 100644
--- a/test/transform/resource/after-delombok/LoggerSlf4jTypes.java
+++ b/test/transform/resource/after-delombok/LoggerSlf4jTypes.java
@@ -3,7 +3,7 @@ interface LoggerSlf4jTypesInterface {
@interface LoggerSlf4jTypesAnnotation {
}
enum LoggerSlf4jTypesEnum {
-;
+ ;
@java.lang.SuppressWarnings("all")
private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(LoggerSlf4jTypesEnum.class);
}
@@ -17,4 +17,4 @@ interface LoggerSlf4jTypesInterfaceOuter {
@java.lang.SuppressWarnings("all")
private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(Inner.class);
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/LoggerXSlf4j.java b/test/transform/resource/after-delombok/LoggerXSlf4j.java
index d0654b51..781733cf 100644
--- a/test/transform/resource/after-delombok/LoggerXSlf4j.java
+++ b/test/transform/resource/after-delombok/LoggerXSlf4j.java
@@ -9,4 +9,4 @@ class LoggerXSlf4jWithImport {
class LoggerXSlf4jWithDifferentName {
@java.lang.SuppressWarnings("all")
private static final org.slf4j.ext.XLogger log = org.slf4j.ext.XLoggerFactory.getXLogger("DifferentName");
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/MixGetterVal.java b/test/transform/resource/after-delombok/MixGetterVal.java
index abc60d56..a2b44ea0 100644
--- a/test/transform/resource/after-delombok/MixGetterVal.java
+++ b/test/transform/resource/after-delombok/MixGetterVal.java
@@ -12,4 +12,4 @@ class MixGetterVal {
public int getX() {
return this.x;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/MultiFieldGetter.java b/test/transform/resource/after-delombok/MultiFieldGetter.java
index ed84f4ed..3586a7e6 100644
--- a/test/transform/resource/after-delombok/MultiFieldGetter.java
+++ b/test/transform/resource/after-delombok/MultiFieldGetter.java
@@ -21,4 +21,4 @@ class MultiFieldGetter2 {
int getY() {
return this.y;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/NoArgsConstructorForce.java b/test/transform/resource/after-delombok/NoArgsConstructorForce.java
new file mode 100644
index 00000000..3336ca19
--- /dev/null
+++ b/test/transform/resource/after-delombok/NoArgsConstructorForce.java
@@ -0,0 +1,13 @@
+
+public class NoArgsConstructorForce {
+ private final int[] i;
+ private final Object[] o;
+ private final java.util.List<?>[] fullQualifiedList;
+
+ @java.lang.SuppressWarnings("all")
+ public NoArgsConstructorForce() {
+ this.i = null;
+ this.o = null;
+ this.fullQualifiedList = null;
+ }
+}
diff --git a/test/transform/resource/after-delombok/NonNullOnParameterAbstract.java b/test/transform/resource/after-delombok/NonNullOnParameterAbstract.java
index e0330bd6..62fd878a 100644
--- a/test/transform/resource/after-delombok/NonNullOnParameterAbstract.java
+++ b/test/transform/resource/after-delombok/NonNullOnParameterAbstract.java
@@ -7,4 +7,4 @@ abstract class NonNullOnParameterAbstract {
}
public abstract void test2(@lombok.NonNull String arg);
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/NonNullOnParameterOfDefaultMethod.java b/test/transform/resource/after-delombok/NonNullOnParameterOfDefaultMethod.java
new file mode 100644
index 00000000..e220296f
--- /dev/null
+++ b/test/transform/resource/after-delombok/NonNullOnParameterOfDefaultMethod.java
@@ -0,0 +1,10 @@
+// version 8:
+interface NonNullOnParameterOfDefaultMethod {
+ void test(@lombok.NonNull String arg);
+ default void test2(@lombok.NonNull String arg) {
+ if (arg == null) {
+ throw new java.lang.NullPointerException("arg");
+ }
+ System.out.println(arg);
+ }
+}
diff --git a/test/transform/resource/after-delombok/NonNullPlain.java b/test/transform/resource/after-delombok/NonNullPlain.java
index b7d27ef3..f6b8037e 100644
--- a/test/transform/resource/after-delombok/NonNullPlain.java
+++ b/test/transform/resource/after-delombok/NonNullPlain.java
@@ -10,7 +10,6 @@ class NonNullPlain {
@Retention(RetentionPolicy.CLASS)
public @interface NotNull {
}
- @java.beans.ConstructorProperties({"i", "s"})
@java.lang.SuppressWarnings("all")
public NonNullPlain(@lombok.NonNull final int i, @lombok.NonNull final String s) {
if (s == null) {
diff --git a/test/transform/resource/after-delombok/NonNullWithAlternateException.java b/test/transform/resource/after-delombok/NonNullWithAlternateException.java
index 686a1219..76c6406a 100644
--- a/test/transform/resource/after-delombok/NonNullWithAlternateException.java
+++ b/test/transform/resource/after-delombok/NonNullWithAlternateException.java
@@ -14,4 +14,4 @@ public class NonNullWithAlternateException {
}
this.test = test;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/NonNullWithSneakyThrows.java b/test/transform/resource/after-delombok/NonNullWithSneakyThrows.java
index 91646468..97de0d8a 100644
--- a/test/transform/resource/after-delombok/NonNullWithSneakyThrows.java
+++ b/test/transform/resource/after-delombok/NonNullWithSneakyThrows.java
@@ -9,4 +9,4 @@ class NonNullWithSneakyThrows {
throw lombok.Lombok.sneakyThrow($ex);
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/OnXJava7Style.java b/test/transform/resource/after-delombok/OnXJava7Style.java
new file mode 100644
index 00000000..7ebf65a3
--- /dev/null
+++ b/test/transform/resource/after-delombok/OnXJava7Style.java
@@ -0,0 +1,38 @@
+//version :7
+public class OnXJava7Style {
+ @interface Foo {
+ String value() default "";
+ }
+ @interface Bar {
+ String stuff() default "";
+ }
+ String a;
+ String b;
+ String c;
+ String d;
+ String e;
+ @Foo
+ @java.lang.SuppressWarnings("all")
+ public String getA() {
+ return this.a;
+ }
+ @Foo
+ @java.lang.SuppressWarnings("all")
+ public void setB(final String b) {
+ this.b = b;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setC(@Foo("a") final String c) {
+ this.c = c;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setD(@Bar(stuff = "b") final String d) {
+ this.d = d;
+ }
+ @Foo("c")
+ @Bar(stuff = "d")
+ @java.lang.SuppressWarnings("all")
+ public String getE() {
+ return this.e;
+ }
+}
diff --git a/test/transform/resource/after-delombok/OnXJava8Style.java b/test/transform/resource/after-delombok/OnXJava8Style.java
new file mode 100644
index 00000000..d2f76e10
--- /dev/null
+++ b/test/transform/resource/after-delombok/OnXJava8Style.java
@@ -0,0 +1,38 @@
+//version 8:
+public class OnXJava8Style {
+ @interface Foo {
+ String value() default "";
+ }
+ @interface Bar {
+ String stuff() default "";
+ }
+ String a;
+ String b;
+ String c;
+ String d;
+ String e;
+ @Foo
+ @java.lang.SuppressWarnings("all")
+ public String getA() {
+ return this.a;
+ }
+ @Foo
+ @java.lang.SuppressWarnings("all")
+ public void setB(final String b) {
+ this.b = b;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setC(@Foo("a") final String c) {
+ this.c = c;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setD(@Bar(stuff = "b") final String d) {
+ this.d = d;
+ }
+ @Foo("c")
+ @Bar(stuff = "d")
+ @java.lang.SuppressWarnings("all")
+ public String getE() {
+ return this.e;
+ }
+}
diff --git a/test/transform/resource/after-delombok/SetterAccessLevel.java b/test/transform/resource/after-delombok/SetterAccessLevel.java
index 45df2b35..51a58e8e 100644
--- a/test/transform/resource/after-delombok/SetterAccessLevel.java
+++ b/test/transform/resource/after-delombok/SetterAccessLevel.java
@@ -25,4 +25,4 @@ class SetterAccessLevel {
public void setValue(final boolean value) {
this.value = value;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SetterAlreadyExists.java b/test/transform/resource/after-delombok/SetterAlreadyExists.java
index 5bfc1f83..a62f20da 100644
--- a/test/transform/resource/after-delombok/SetterAlreadyExists.java
+++ b/test/transform/resource/after-delombok/SetterAlreadyExists.java
@@ -50,4 +50,4 @@ class Setter9 {
boolean isFoo;
void setFoo(boolean foo) {
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SetterDeprecated.java b/test/transform/resource/after-delombok/SetterDeprecated.java
index 72a609ad..cc52413b 100644
--- a/test/transform/resource/after-delombok/SetterDeprecated.java
+++ b/test/transform/resource/after-delombok/SetterDeprecated.java
@@ -18,4 +18,4 @@ class SetterDeprecated {
public void setJavadoc(final int javadoc) {
this.javadoc = javadoc;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SetterOnClass.java b/test/transform/resource/after-delombok/SetterOnClass.java
index 7077c492..f2347bcb 100644
--- a/test/transform/resource/after-delombok/SetterOnClass.java
+++ b/test/transform/resource/after-delombok/SetterOnClass.java
@@ -58,4 +58,4 @@ class SetterOnClass6 {
}
this.nonNull = nonNull;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SetterPlain.java b/test/transform/resource/after-delombok/SetterPlain.java
index 39aa7b61..0ec9ca1b 100644
--- a/test/transform/resource/after-delombok/SetterPlain.java
+++ b/test/transform/resource/after-delombok/SetterPlain.java
@@ -9,4 +9,4 @@ class SetterPlain {
public void setFoo(final int foo) {
this.foo = foo;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SetterWithDollar.java b/test/transform/resource/after-delombok/SetterWithDollar.java
index 974efdcd..8d116e99 100644
--- a/test/transform/resource/after-delombok/SetterWithDollar.java
+++ b/test/transform/resource/after-delombok/SetterWithDollar.java
@@ -2,6 +2,8 @@ class SetterWithDollar1 {
int $i;
@java.lang.SuppressWarnings("all")
+
+
public void set$i(final int $i) {
this.$i = $i;
}
@@ -11,6 +13,8 @@ class SetterWithDollar2 {
int i;
@java.lang.SuppressWarnings("all")
+
+
public void set$i(final int $i) {
this.$i = $i;
}
@@ -18,4 +22,4 @@ class SetterWithDollar2 {
public void setI(final int i) {
this.i = i;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SneakyThrowsMultiple.java b/test/transform/resource/after-delombok/SneakyThrowsMultiple.java
index 42b275c6..5faca0a1 100644
--- a/test/transform/resource/after-delombok/SneakyThrowsMultiple.java
+++ b/test/transform/resource/after-delombok/SneakyThrowsMultiple.java
@@ -42,4 +42,4 @@ class SneakyThrowsMultiple {
throw lombok.Lombok.sneakyThrow($ex);
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SneakyThrowsPlain.java b/test/transform/resource/after-delombok/SneakyThrowsPlain.java
index f712ab55..86f7790c 100644
--- a/test/transform/resource/after-delombok/SneakyThrowsPlain.java
+++ b/test/transform/resource/after-delombok/SneakyThrowsPlain.java
@@ -28,4 +28,4 @@ class SneakyThrowsPlain {
throw lombok.Lombok.sneakyThrow($ex);
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SneakyThrowsSingle.java b/test/transform/resource/after-delombok/SneakyThrowsSingle.java
index 8901f827..24b4566a 100644
--- a/test/transform/resource/after-delombok/SneakyThrowsSingle.java
+++ b/test/transform/resource/after-delombok/SneakyThrowsSingle.java
@@ -23,4 +23,4 @@ class SneakyThrowsSingle {
throw lombok.Lombok.sneakyThrow($ex);
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SynchronizedName.java b/test/transform/resource/after-delombok/SynchronizedName.java
index ab3c0431..91fd7ea7 100644
--- a/test/transform/resource/after-delombok/SynchronizedName.java
+++ b/test/transform/resource/after-delombok/SynchronizedName.java
@@ -17,4 +17,4 @@ class SynchronizedName {
System.out.println("five");
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SynchronizedNameNoSuchField.java b/test/transform/resource/after-delombok/SynchronizedNameNoSuchField.java
index d252985f..73ce25ec 100644
--- a/test/transform/resource/after-delombok/SynchronizedNameNoSuchField.java
+++ b/test/transform/resource/after-delombok/SynchronizedNameNoSuchField.java
@@ -4,4 +4,4 @@ class SynchronizedNameNoSuchField {
void test2() {
System.out.println("two");
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SynchronizedNameStaticToInstanceRef.java b/test/transform/resource/after-delombok/SynchronizedNameStaticToInstanceRef.java
index 8441570b..effa036f 100644
--- a/test/transform/resource/after-delombok/SynchronizedNameStaticToInstanceRef.java
+++ b/test/transform/resource/after-delombok/SynchronizedNameStaticToInstanceRef.java
@@ -6,4 +6,4 @@ class SynchronizedNameStaticToInstanceRef {
System.out.println("three");
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/SynchronizedPlain.java b/test/transform/resource/after-delombok/SynchronizedPlain.java
index 1a065085..f178aa4e 100644
--- a/test/transform/resource/after-delombok/SynchronizedPlain.java
+++ b/test/transform/resource/after-delombok/SynchronizedPlain.java
@@ -25,4 +25,4 @@ class SynchronizedPlain2 {
System.out.println("four");
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ToStringConfiguration.java b/test/transform/resource/after-delombok/ToStringConfiguration.java
index 035ecdb2..6fa9111e 100644
--- a/test/transform/resource/after-delombok/ToStringConfiguration.java
+++ b/test/transform/resource/after-delombok/ToStringConfiguration.java
@@ -29,4 +29,4 @@ class ToStringConfiguration3 {
public int getX() {
return this.x;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ToStringInner.java b/test/transform/resource/after-delombok/ToStringInner.java
index 7b1d5e21..fe77fcfd 100644
--- a/test/transform/resource/after-delombok/ToStringInner.java
+++ b/test/transform/resource/after-delombok/ToStringInner.java
@@ -33,4 +33,4 @@ class ToStringOuter {
public java.lang.String toString() {
return "ToStringOuter(x=" + this.x + ", name=" + this.name + ")";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ToStringPlain.java b/test/transform/resource/after-delombok/ToStringPlain.java
index e6f3db7a..af9daf4f 100644
--- a/test/transform/resource/after-delombok/ToStringPlain.java
+++ b/test/transform/resource/after-delombok/ToStringPlain.java
@@ -15,4 +15,4 @@ class ToString2 {
public java.lang.String toString() {
return "ToString2(x=" + this.x + ", name=" + this.name + ")";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/Tolerate.java b/test/transform/resource/after-delombok/Tolerate.java
index fbb42f1b..c3e3d7fd 100644
--- a/test/transform/resource/after-delombok/Tolerate.java
+++ b/test/transform/resource/after-delombok/Tolerate.java
@@ -10,11 +10,15 @@ class Tolerate {
}
@java.lang.SuppressWarnings("all")
+
+
public void setPattern(final Pattern pattern) {
this.pattern = pattern;
}
@java.lang.SuppressWarnings("all")
+
+
public Pattern getPattern() {
return this.pattern;
}
@@ -32,16 +36,19 @@ class Tolerate2 {
}
@java.lang.SuppressWarnings("all")
+
+
public Pattern getPattern() {
return this.pattern;
}
@java.lang.SuppressWarnings("all")
+
+
public Tolerate2 withPattern(final Pattern pattern) {
return this.pattern == pattern ? this : new Tolerate2(pattern);
}
- @java.beans.ConstructorProperties({"pattern"})
@java.lang.SuppressWarnings("all")
public Tolerate2(final Pattern pattern) {
this.pattern = pattern;
diff --git a/test/transform/resource/after-delombok/UtilityClass.java b/test/transform/resource/after-delombok/UtilityClass.java
new file mode 100644
index 00000000..8d3f4c08
--- /dev/null
+++ b/test/transform/resource/after-delombok/UtilityClass.java
@@ -0,0 +1,43 @@
+final class UtilityClass {
+ private static long someField = System.currentTimeMillis();
+ static void someMethod() {
+ System.out.println();
+ }
+ protected static class InnerClass {
+ private String innerInnerMember;
+ }
+ @java.lang.SuppressWarnings("all")
+ private UtilityClass() {
+ throw new java.lang.UnsupportedOperationException("This is a utility class and cannot be instantiated");
+ }
+}
+class UtilityInner {
+ static class InnerInner {
+ static final class InnerInnerInner {
+ static int member;
+ @java.lang.SuppressWarnings("all")
+ private InnerInnerInner() {
+ throw new java.lang.UnsupportedOperationException("This is a utility class and cannot be instantiated");
+ }
+ }
+ }
+ enum UtilityInsideEnum {
+ FOO, BAR;
+ static final class InsideEnum {
+ static int member;
+ @java.lang.SuppressWarnings("all")
+ private InsideEnum() {
+ throw new java.lang.UnsupportedOperationException("This is a utility class and cannot be instantiated");
+ }
+ }
+ }
+ interface UtilityInsideInterface {
+ final class InsideInterface {
+ static int member;
+ @java.lang.SuppressWarnings("all")
+ private InsideInterface() {
+ throw new java.lang.UnsupportedOperationException("This is a utility class and cannot be instantiated");
+ }
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/UtilityClassErrors.java b/test/transform/resource/after-delombok/UtilityClassErrors.java
new file mode 100644
index 00000000..5181b750
--- /dev/null
+++ b/test/transform/resource/after-delombok/UtilityClassErrors.java
@@ -0,0 +1,19 @@
+final class UtilityClassErrors1 {
+ private static String someField;
+ protected UtilityClassErrors1() {
+ }
+ static void method() {
+ class MethodLocalClass {
+ }
+ }
+}
+enum UtilityClassErrors2 {
+ ;
+}
+class UtilityClassErrors3 {
+ class NonStaticInner {
+ class ThisShouldFail {
+ private String member;
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/ValAnonymousSubclassWithGenerics.java b/test/transform/resource/after-delombok/ValAnonymousSubclassWithGenerics.java
new file mode 100644
index 00000000..07093e5a
--- /dev/null
+++ b/test/transform/resource/after-delombok/ValAnonymousSubclassWithGenerics.java
@@ -0,0 +1,18 @@
+import java.util.*;
+public class ValAnonymousSubclassWithGenerics {
+ Object object = new Object() {
+ void foo() {
+ final int j = 1;
+ }
+ };
+ void bar() {
+ final int k = super.hashCode();
+ int x = k;
+ }
+ java.util.List<String> names = new java.util.ArrayList<String>() {
+ public String get(int i) {
+ final java.lang.String result = super.get(i);
+ return result;
+ }
+ };
+}
diff --git a/test/transform/resource/after-delombok/ValComplex.java b/test/transform/resource/after-delombok/ValComplex.java
index 0df87fac..e0dfe1b7 100644
--- a/test/transform/resource/after-delombok/ValComplex.java
+++ b/test/transform/resource/after-delombok/ValComplex.java
@@ -17,4 +17,4 @@ public class ValComplex {
}
final java.lang.String shouldBeString = field; //Unshadowing
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValDefault.java b/test/transform/resource/after-delombok/ValDefault.java
index 8c85311b..74376dbb 100644
--- a/test/transform/resource/after-delombok/ValDefault.java
+++ b/test/transform/resource/after-delombok/ValDefault.java
@@ -5,4 +5,4 @@ interface ValDefault {
final int x = 1;
final int size = size();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValErrors.java b/test/transform/resource/after-delombok/ValErrors.java
index 770a7e95..f8365c2d 100644
--- a/test/transform/resource/after-delombok/ValErrors.java
+++ b/test/transform/resource/after-delombok/ValErrors.java
@@ -5,4 +5,4 @@ public class ValErrors {
public void arrayInitializer() {
val e = {"foo", "bar"};
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValFinal.java b/test/transform/resource/after-delombok/ValFinal.java
new file mode 100644
index 00000000..6be08565
--- /dev/null
+++ b/test/transform/resource/after-delombok/ValFinal.java
@@ -0,0 +1,5 @@
+public class ValFinal {
+ public void test() {
+ final int x = 10;
+ }
+}
diff --git a/test/transform/resource/after-delombok/ValInBasicFor.java b/test/transform/resource/after-delombok/ValInBasicFor.java
index e21450e1..a3746b23 100644
--- a/test/transform/resource/after-delombok/ValInBasicFor.java
+++ b/test/transform/resource/after-delombok/ValInBasicFor.java
@@ -6,4 +6,4 @@ public class ValInBasicFor {
System.out.println("");
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValInFor.java b/test/transform/resource/after-delombok/ValInFor.java
index de75803b..5cb15e1a 100644
--- a/test/transform/resource/after-delombok/ValInFor.java
+++ b/test/transform/resource/after-delombok/ValInFor.java
@@ -6,4 +6,4 @@ public class ValInFor {
final java.lang.String shouldBeString2 = shouldBeString;
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValInLambda.java b/test/transform/resource/after-delombok/ValInLambda.java
new file mode 100644
index 00000000..7ce1e1b4
--- /dev/null
+++ b/test/transform/resource/after-delombok/ValInLambda.java
@@ -0,0 +1,18 @@
+// version 8:
+class ValInLambda {
+ Runnable foo = (Runnable) () -> {
+ final int i = 1;
+ };
+
+ public void easyLambda() {
+ Runnable foo = (Runnable) () -> {
+ final int i = 1;
+ };
+ }
+
+ public void easyIntersectionLambda() {
+ Runnable foo = (Runnable) () -> {
+ final int i = 1;
+ };
+ }
+}
diff --git a/test/transform/resource/after-delombok/ValInMultiDeclaration.java b/test/transform/resource/after-delombok/ValInMultiDeclaration.java
index 32f689c7..d1074174 100644
--- a/test/transform/resource/after-delombok/ValInMultiDeclaration.java
+++ b/test/transform/resource/after-delombok/ValInMultiDeclaration.java
@@ -3,4 +3,4 @@ public class ValInMultiDeclaration {
final int x = 10;
final java.lang.String y = "";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValLambda.java b/test/transform/resource/after-delombok/ValLambda.java
index 0b13b5a1..9214b490 100644
--- a/test/transform/resource/after-delombok/ValLambda.java
+++ b/test/transform/resource/after-delombok/ValLambda.java
@@ -1,21 +1,21 @@
// version 8:
class ValLambda {
public void easyLambda() {
- final java.lang.Runnable foo = (Runnable)() -> {
+ final java.lang.Runnable foo = (Runnable) () -> {
};
}
public void easyIntersectionLambda() {
- final java.lang.Object foo = (Runnable & java.io.Serializable)() -> {
+ final java.lang.Object foo = (Runnable & java.io.Serializable) () -> {
};
- final java.lang.Object bar = (java.io.Serializable & Runnable)() -> {
+ final java.lang.Object bar = (java.io.Serializable & Runnable) () -> {
};
}
public void easyLubLambda() {
- final java.lang.Runnable foo = (System.currentTimeMillis() > 0) ? (Runnable)() -> {
- } : (Runnable)System.out::println;
+ final java.lang.Runnable foo = (System.currentTimeMillis() > 0) ? (Runnable) () -> {
+ } : (Runnable) System.out::println;
}
// public void castLubLambda() {
-// Runnable foo = (Runnable)((System.currentTimeMillis() > 0) ? ()-> {} : System.out::println);
-// lombok.val foo = (Runnable)((System.currentTimeMillis() > 0) ? ()-> {} : System.out::println);
+// Runnable foo = (Runnable) ((System.currentTimeMillis() > 0) ? () -> {} : System.out::println);
+// lombok.val foo = (Runnable) ((System.currentTimeMillis() > 0) ? () -> {} : System.out::println);
// }
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValLessSimple.java b/test/transform/resource/after-delombok/ValLessSimple.java
index d06c66ec..5edd5056 100644
--- a/test/transform/resource/after-delombok/ValLessSimple.java
+++ b/test/transform/resource/after-delombok/ValLessSimple.java
@@ -30,4 +30,4 @@ public class ValLessSimple {
}
}
private String field = "field";
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValLub.java b/test/transform/resource/after-delombok/ValLub.java
index d7e8f944..e0847cec 100644
--- a/test/transform/resource/after-delombok/ValLub.java
+++ b/test/transform/resource/after-delombok/ValLub.java
@@ -15,4 +15,4 @@ class ValLub {
thisShouldBeCollection.add("");
String foo = thisShouldBeCollection.iterator().next();
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValNullInit.java b/test/transform/resource/after-delombok/ValNullInit.java
new file mode 100644
index 00000000..91818083
--- /dev/null
+++ b/test/transform/resource/after-delombok/ValNullInit.java
@@ -0,0 +1,5 @@
+class ValNullInit {
+ void method() {
+ final java.lang.Object x = null;
+ }
+}
diff --git a/test/transform/resource/after-delombok/ValRawType.java b/test/transform/resource/after-delombok/ValRawType.java
index dc297046..2e638f98 100644
--- a/test/transform/resource/after-delombok/ValRawType.java
+++ b/test/transform/resource/after-delombok/ValRawType.java
@@ -5,7 +5,7 @@ public class ValRawType {
public void test() {
Element propElement = new Element();
for (final java.lang.Object attribute : propElement.attributes()) {
- final ValRawType.Attribute attr = (Attribute)attribute;
+ final ValRawType.Attribute attr = (Attribute) attribute;
}
}
@@ -17,4 +17,4 @@ public class ValRawType {
static class Attribute {
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValWeirdTypes.java b/test/transform/resource/after-delombok/ValWeirdTypes.java
index 2c2905ed..cd6ba538 100644
--- a/test/transform/resource/after-delombok/ValWeirdTypes.java
+++ b/test/transform/resource/after-delombok/ValWeirdTypes.java
@@ -18,7 +18,7 @@ public class ValWeirdTypes<Z> {
final long y = 5 + 3L;
}
public void testAnonymousInnerClass() {
- final java.lang.Runnable y = new Runnable(){
+ final java.lang.Runnable y = new Runnable() {
public void run() {
}
};
@@ -48,10 +48,10 @@ public class ValWeirdTypes<Z> {
final java.lang.Object nully = null;
}
public void testArrays() {
- final int[] intArray = new int[]{1, 2, 3};
- final java.lang.Object[][] multiDimArray = new Object[][]{{}};
+ final int[] intArray = new int[] {1, 2, 3};
+ final java.lang.Object[][] multiDimArray = new Object[][] {{}};
final int[] copy = intArray;
final java.lang.Object[] single = multiDimArray[0];
final int singleInt = copy[0];
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValWithLabel.java b/test/transform/resource/after-delombok/ValWithLabel.java
index 4d8eabf2..2d046e93 100644
--- a/test/transform/resource/after-delombok/ValWithLabel.java
+++ b/test/transform/resource/after-delombok/ValWithLabel.java
@@ -7,4 +7,4 @@ public class ValWithLabel {
}
}
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/ValWithLocalClasses.java b/test/transform/resource/after-delombok/ValWithLocalClasses.java
new file mode 100644
index 00000000..6487eb82
--- /dev/null
+++ b/test/transform/resource/after-delombok/ValWithLocalClasses.java
@@ -0,0 +1,11 @@
+class ValWithLocalClasses1 {
+ {
+ final ValWithLocalClasses2 f2 = new ValWithLocalClasses2() {
+ };
+ }
+}
+class ValWithLocalClasses2 {
+ {
+ final int f3 = 0;
+ }
+}
diff --git a/test/transform/resource/after-delombok/ValueCallSuper.java b/test/transform/resource/after-delombok/ValueCallSuper.java
new file mode 100644
index 00000000..63a536cd
--- /dev/null
+++ b/test/transform/resource/after-delombok/ValueCallSuper.java
@@ -0,0 +1,32 @@
+class ValueParent {
+}
+final class ValueCallSuper extends ValueParent {
+ @java.lang.SuppressWarnings("all")
+ public ValueCallSuper() {
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (!(o instanceof ValueCallSuper)) return false;
+ final ValueCallSuper other = (ValueCallSuper) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
+ if (!super.equals(o)) return false;
+ return true;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean canEqual(final java.lang.Object other) {
+ return other instanceof ValueCallSuper;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ int result = super.hashCode();
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "ValueCallSuper()";
+ }
+}
diff --git a/test/transform/resource/after-delombok/ValueExperimental.java b/test/transform/resource/after-delombok/ValueExperimental.java
deleted file mode 100644
index 77a48ec9..00000000
--- a/test/transform/resource/after-delombok/ValueExperimental.java
+++ /dev/null
@@ -1,46 +0,0 @@
-final class ValueExperimental1 {
- @java.lang.SuppressWarnings("all")
- public ValueExperimental1() {
- }
- @java.lang.Override
- @java.lang.SuppressWarnings("all")
- public boolean equals(final java.lang.Object o) {
- if (o == this) return true;
- if (!(o instanceof ValueExperimental1)) return false;
- return true;
- }
- @java.lang.Override
- @java.lang.SuppressWarnings("all")
- public int hashCode() {
- int result = 1;
- return result;
- }
- @java.lang.Override
- @java.lang.SuppressWarnings("all")
- public java.lang.String toString() {
- return "ValueExperimental1()";
- }
-}
-final class ValueExperimental2 {
- @java.lang.SuppressWarnings("all")
- public ValueExperimental2() {
- }
- @java.lang.Override
- @java.lang.SuppressWarnings("all")
- public boolean equals(final java.lang.Object o) {
- if (o == this) return true;
- if (!(o instanceof ValueExperimental2)) return false;
- return true;
- }
- @java.lang.Override
- @java.lang.SuppressWarnings("all")
- public int hashCode() {
- int result = 1;
- return result;
- }
- @java.lang.Override
- @java.lang.SuppressWarnings("all")
- public java.lang.String toString() {
- return "ValueExperimental2()";
- }
-} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/ValuePlain.java b/test/transform/resource/after-delombok/ValuePlain.java
index 64e5b9b9..cf2c1142 100644
--- a/test/transform/resource/after-delombok/ValuePlain.java
+++ b/test/transform/resource/after-delombok/ValuePlain.java
@@ -1,7 +1,6 @@
final class Value1 {
private final int x;
private final String name;
- @java.beans.ConstructorProperties({"x", "name"})
@java.lang.SuppressWarnings("all")
public Value1(final int x, final String name) {
this.x = x;
@@ -20,7 +19,7 @@ final class Value1 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Value1)) return false;
- final Value1 other = (Value1)o;
+ final Value1 other = (Value1) o;
if (this.getX() != other.getX()) return false;
final java.lang.Object this$name = this.getName();
final java.lang.Object other$name = other.getName();
@@ -34,7 +33,7 @@ final class Value1 {
int result = 1;
result = result * PRIME + this.getX();
final java.lang.Object $name = this.getName();
- result = result * PRIME + ($name == null ? 0 : $name.hashCode());
+ result = result * PRIME + ($name == null ? 43 : $name.hashCode());
return result;
}
@java.lang.Override
@@ -46,7 +45,6 @@ final class Value1 {
class Value2 {
public final int x;
private final String name;
- @java.beans.ConstructorProperties({"x", "name"})
@java.lang.SuppressWarnings("all")
public Value2(final int x, final String name) {
this.x = x;
@@ -65,8 +63,8 @@ class Value2 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Value2)) return false;
- final Value2 other = (Value2)o;
- if (!other.canEqual((java.lang.Object)this)) return false;
+ final Value2 other = (Value2) o;
+ if (!other.canEqual((java.lang.Object) this)) return false;
if (this.getX() != other.getX()) return false;
final java.lang.Object this$name = this.getName();
final java.lang.Object other$name = other.getName();
@@ -84,7 +82,7 @@ class Value2 {
int result = 1;
result = result * PRIME + this.getX();
final java.lang.Object $name = this.getName();
- result = result * PRIME + ($name == null ? 0 : $name.hashCode());
+ result = result * PRIME + ($name == null ? 43 : $name.hashCode());
return result;
}
@java.lang.Override
@@ -96,7 +94,6 @@ class Value2 {
final class Value3 {
private int x;
private final int y;
- @java.beans.ConstructorProperties({"x", "y"})
@java.lang.SuppressWarnings("all")
public Value3(final int x, final int y) {
this.x = x;
@@ -115,7 +112,7 @@ final class Value3 {
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
if (!(o instanceof Value3)) return false;
- final Value3 other = (Value3)o;
+ final Value3 other = (Value3) o;
if (this.getX() != other.getX()) return false;
if (this.getY() != other.getY()) return false;
return true;
diff --git a/test/transform/resource/after-delombok/ValueExperimentalStarImport.java b/test/transform/resource/after-delombok/ValueStaticField.java
index 6911f260..2b489a1a 100644
--- a/test/transform/resource/after-delombok/ValueExperimentalStarImport.java
+++ b/test/transform/resource/after-delombok/ValueStaticField.java
@@ -1,14 +1,14 @@
-import lombok.experimental.*;
-final class ValueExperimentalStarImport {
+final class ValueStaticField {
+ static int x;
+ static String PASSWORD = "Ken sent me";
@java.lang.SuppressWarnings("all")
- public ValueExperimentalStarImport() {
-
+ public ValueStaticField() {
}
@java.lang.Override
@java.lang.SuppressWarnings("all")
public boolean equals(final java.lang.Object o) {
if (o == this) return true;
- if (!(o instanceof ValueExperimentalStarImport)) return false;
+ if (!(o instanceof ValueStaticField)) return false;
return true;
}
@java.lang.Override
@@ -20,6 +20,6 @@ final class ValueExperimentalStarImport {
@java.lang.Override
@java.lang.SuppressWarnings("all")
public java.lang.String toString() {
- return "ValueExperimentalStarImport()";
+ return "ValueStaticField()";
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/VarComplex.java b/test/transform/resource/after-delombok/VarComplex.java
new file mode 100644
index 00000000..b08ad115
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarComplex.java
@@ -0,0 +1,20 @@
+public class VarComplex {
+ private String field = "";
+ private static final int CONSTANT = 20;
+ public void testComplex() {
+ char[] shouldBeCharArray = field.toCharArray();
+ int shouldBeInt = CONSTANT;
+ java.lang.Object lock = new Object();
+ synchronized (lock) {
+ int field = 20; //Shadowing
+ int inner = 10;
+ switch (field) {
+ case 5:
+ char[] shouldBeCharArray2 = shouldBeCharArray;
+ int innerInner = inner;
+
+ }
+ }
+ java.lang.String shouldBeString = field; //Unshadowing
+ }
+}
diff --git a/test/transform/resource/after-delombok/VarInFor.java b/test/transform/resource/after-delombok/VarInFor.java
new file mode 100644
index 00000000..f2e95b09
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarInFor.java
@@ -0,0 +1,9 @@
+public class VarInFor {
+ public void enhancedFor() {
+ int[] list = new int[] {1, 2};
+ for (int shouldBeInt : list) {
+ System.out.println(shouldBeInt);
+ int shouldBeInt2 = shouldBeInt;
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/VarInForOld.java b/test/transform/resource/after-delombok/VarInForOld.java
new file mode 100644
index 00000000..ddb370ef
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarInForOld.java
@@ -0,0 +1,7 @@
+public class VarInForOld {
+ public void oldFor() {
+ for (int i = 0; i < 100; ++i) {
+ System.out.println(i);
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/VarModifier.java b/test/transform/resource/after-delombok/VarModifier.java
new file mode 100644
index 00000000..ba4d9362
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarModifier.java
@@ -0,0 +1,7 @@
+public class VarModifier {
+ private String field = "";
+ public void testComplex() {
+ final char[] shouldBeFinalCharArray = field.toCharArray();
+ char[] shouldBeCharArray = field.toCharArray();
+ }
+}
diff --git a/test/transform/resource/after-delombok/VarNullInit.java b/test/transform/resource/after-delombok/VarNullInit.java
new file mode 100644
index 00000000..ed5f8e8d
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarNullInit.java
@@ -0,0 +1,6 @@
+
+public class VarNullInit {
+ void method() {
+ java.lang.Object x = null;
+ }
+}
diff --git a/test/transform/resource/after-delombok/VarWarning.java b/test/transform/resource/after-delombok/VarWarning.java
new file mode 100644
index 00000000..a333c87c
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarWarning.java
@@ -0,0 +1,6 @@
+public class VarWarning {
+ public void isOkay() {
+ java.lang.String x = "Warning";
+ x.toLowerCase();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/WithInnerAnnotation.java b/test/transform/resource/after-delombok/WithInnerAnnotation.java
index a8decfeb..1e88b226 100644
--- a/test/transform/resource/after-delombok/WithInnerAnnotation.java
+++ b/test/transform/resource/after-delombok/WithInnerAnnotation.java
@@ -2,4 +2,4 @@ class WithInnerAnnotation {
@interface Inner {
int bar() default 42;
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/WitherAccessLevel.java b/test/transform/resource/after-delombok/WitherAccessLevel.java
index 963f6972..c687d645 100644
--- a/test/transform/resource/after-delombok/WitherAccessLevel.java
+++ b/test/transform/resource/after-delombok/WitherAccessLevel.java
@@ -27,4 +27,4 @@ class WitherAccessLevel {
public WitherAccessLevel withValue(final boolean value) {
return this.value == value ? this : new WitherAccessLevel(this.isNone, this.isPrivate, this.isPackage, this.isProtected, this.isPublic, value);
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/WitherAlreadyExists.java b/test/transform/resource/after-delombok/WitherAlreadyExists.java
index be41f6bc..d609bc7b 100644
--- a/test/transform/resource/after-delombok/WitherAlreadyExists.java
+++ b/test/transform/resource/after-delombok/WitherAlreadyExists.java
@@ -68,4 +68,4 @@ class Wither9 {
}
Wither9(boolean foo) {
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/WitherAndAllArgsConstructor.java b/test/transform/resource/after-delombok/WitherAndAllArgsConstructor.java
index 7607dce4..ff4fe3e2 100644
--- a/test/transform/resource/after-delombok/WitherAndAllArgsConstructor.java
+++ b/test/transform/resource/after-delombok/WitherAndAllArgsConstructor.java
@@ -4,7 +4,6 @@ class WitherAndAllArgsConstructor<T, J extends T, L extends java.lang.Number> {
final int x = 10;
int y = 20;
final int z;
- @java.beans.ConstructorProperties({"test", "test2", "y", "z"})
@java.lang.SuppressWarnings("all")
public WitherAndAllArgsConstructor(final J test, final java.util.List<L> test2, final int y, final int z) {
this.test = test;
@@ -20,4 +19,4 @@ class WitherAndAllArgsConstructor<T, J extends T, L extends java.lang.Number> {
public WitherAndAllArgsConstructor<T, J, L> withTest2(final java.util.List<L> test2) {
return this.test2 == test2 ? this : new WitherAndAllArgsConstructor<T, J, L>(this.test, test2, this.y, this.z);
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/WitherDeprecated.java b/test/transform/resource/after-delombok/WitherDeprecated.java
index 29192012..b342a861 100644
--- a/test/transform/resource/after-delombok/WitherDeprecated.java
+++ b/test/transform/resource/after-delombok/WitherDeprecated.java
@@ -20,4 +20,4 @@ class WitherDeprecated {
public WitherDeprecated withJavadoc(final int javadoc) {
return this.javadoc == javadoc ? this : new WitherDeprecated(this.annotation, javadoc);
}
-} \ No newline at end of file
+}
diff --git a/test/transform/resource/after-delombok/WitherWithAbstract.java b/test/transform/resource/after-delombok/WitherWithAbstract.java
new file mode 100644
index 00000000..f9178e99
--- /dev/null
+++ b/test/transform/resource/after-delombok/WitherWithAbstract.java
@@ -0,0 +1,5 @@
+abstract class WitherWithAbstract {
+ String foo;
+ @java.lang.SuppressWarnings("all")
+ public abstract WitherWithAbstract withFoo(final String foo);
+}
diff --git a/test/transform/resource/after-ecj/Accessors.java b/test/transform/resource/after-ecj/Accessors.java
index 6b8976d0..8ac92e6e 100644
--- a/test/transform/resource/after-ecj/Accessors.java
+++ b/test/transform/resource/after-ecj/Accessors.java
@@ -77,7 +77,7 @@ class AccessorsChain {
return true;
if ((! (o instanceof AccessorsPrefix3)))
return false;
- final @java.lang.SuppressWarnings("all") AccessorsPrefix3 other = (AccessorsPrefix3) o;
+ final AccessorsPrefix3 other = (AccessorsPrefix3) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
final java.lang.Object this$fName = this.getName();
@@ -93,7 +93,7 @@ class AccessorsChain {
final int PRIME = 59;
int result = 1;
final java.lang.Object $fName = this.getName();
- result = ((result * PRIME) + (($fName == null) ? 0 : $fName.hashCode()));
+ result = ((result * PRIME) + (($fName == null) ? 43 : $fName.hashCode()));
return result;
}
}
diff --git a/test/transform/resource/after-ecj/BuilderChainAndFluent.java b/test/transform/resource/after-ecj/BuilderChainAndFluent.java
deleted file mode 100644
index 6a307105..00000000
--- a/test/transform/resource/after-ecj/BuilderChainAndFluent.java
+++ /dev/null
@@ -1,25 +0,0 @@
-@lombok.experimental.Builder(fluent = false,chain = false) class BuilderChainAndFluent {
- public static @java.lang.SuppressWarnings("all") class BuilderChainAndFluentBuilder {
- private int yes;
- @java.lang.SuppressWarnings("all") BuilderChainAndFluentBuilder() {
- super();
- }
- public @java.lang.SuppressWarnings("all") void setYes(final int yes) {
- this.yes = yes;
- }
- public @java.lang.SuppressWarnings("all") BuilderChainAndFluent build() {
- return new BuilderChainAndFluent(yes);
- }
- public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
- return (("BuilderChainAndFluent.BuilderChainAndFluentBuilder(yes=" + this.yes) + ")");
- }
- }
- private final int yes;
- @java.lang.SuppressWarnings("all") BuilderChainAndFluent(final int yes) {
- super();
- this.yes = yes;
- }
- public static @java.lang.SuppressWarnings("all") BuilderChainAndFluentBuilder builder() {
- return new BuilderChainAndFluentBuilder();
- }
-}
diff --git a/test/transform/resource/after-ecj/BuilderComplex.java b/test/transform/resource/after-ecj/BuilderComplex.java
index 19aeb043..93d70fe9 100644
--- a/test/transform/resource/after-ecj/BuilderComplex.java
+++ b/test/transform/resource/after-ecj/BuilderComplex.java
@@ -1,11 +1,11 @@
import java.util.List;
-import lombok.experimental.Builder;
+import lombok.Builder;
class BuilderComplex {
public static @java.lang.SuppressWarnings("all") class VoidBuilder<T extends Number> {
- private T number;
- private int arg2;
- private String arg3;
- private BuilderComplex selfRef;
+ private @java.lang.SuppressWarnings("all") T number;
+ private @java.lang.SuppressWarnings("all") int arg2;
+ private @java.lang.SuppressWarnings("all") String arg3;
+ private @java.lang.SuppressWarnings("all") BuilderComplex selfRef;
@java.lang.SuppressWarnings("all") VoidBuilder() {
super();
}
diff --git a/test/transform/resource/after-ecj/BuilderDefaults.java b/test/transform/resource/after-ecj/BuilderDefaults.java
new file mode 100644
index 00000000..1a0f1168
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderDefaults.java
@@ -0,0 +1,90 @@
+import lombok.Builder;
+import lombok.Value;
+public final @Value @Builder class BuilderDefaults {
+ public static @java.lang.SuppressWarnings("all") class BuilderDefaultsBuilder {
+ private @java.lang.SuppressWarnings("all") int x;
+ private @java.lang.SuppressWarnings("all") boolean x$set;
+ private @java.lang.SuppressWarnings("all") String name;
+ private @java.lang.SuppressWarnings("all") long z;
+ private @java.lang.SuppressWarnings("all") boolean z$set;
+ @java.lang.SuppressWarnings("all") BuilderDefaultsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsBuilder x(final int x) {
+ this.x = x;
+ x$set = true;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsBuilder name(final String name) {
+ this.name = name;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsBuilder z(final long z) {
+ this.z = z;
+ z$set = true;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaults build() {
+ return new BuilderDefaults((x$set ? x : BuilderDefaults.$default$x()), name, (z$set ? z : BuilderDefaults.$default$z()));
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((("BuilderDefaults.BuilderDefaultsBuilder(x=" + this.x) + ", name=") + this.name) + ", z=") + this.z) + ")");
+ }
+ }
+ private final @Builder.Default int x;
+ private final String name;
+ private final @Builder.Default long z;
+ private static @java.lang.SuppressWarnings("all") int $default$x() {
+ return 10;
+ }
+ private static @java.lang.SuppressWarnings("all") long $default$z() {
+ return System.currentTimeMillis();
+ }
+ @java.lang.SuppressWarnings("all") BuilderDefaults(final int x, final String name, final long z) {
+ super();
+ this.x = x;
+ this.name = name;
+ this.z = z;
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderDefaultsBuilder builder() {
+ return new BuilderDefaultsBuilder();
+ }
+ public @java.lang.SuppressWarnings("all") int getX() {
+ return this.x;
+ }
+ public @java.lang.SuppressWarnings("all") String getName() {
+ return this.name;
+ }
+ public @java.lang.SuppressWarnings("all") long getZ() {
+ return this.z;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof BuilderDefaults)))
+ return false;
+ final BuilderDefaults other = (BuilderDefaults) o;
+ if ((this.getX() != other.getX()))
+ return false;
+ final java.lang.Object this$name = this.getName();
+ final java.lang.Object other$name = other.getName();
+ if (((this$name == null) ? (other$name != null) : (! this$name.equals(other$name))))
+ return false;
+ if ((this.getZ() != other.getZ()))
+ return false;
+ return true;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = ((result * PRIME) + this.getX());
+ final java.lang.Object $name = this.getName();
+ result = ((result * PRIME) + (($name == null) ? 43 : $name.hashCode()));
+ final long $z = this.getZ();
+ result = ((result * PRIME) + (int) ($z ^ ($z >>> 32)));
+ return result;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((("BuilderDefaults(x=" + this.getX()) + ", name=") + this.getName()) + ", z=") + this.getZ()) + ")");
+ }
+}
diff --git a/test/transform/resource/after-ecj/BuilderDefaultsGenerics.java b/test/transform/resource/after-ecj/BuilderDefaultsGenerics.java
new file mode 100644
index 00000000..a8f81afa
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderDefaultsGenerics.java
@@ -0,0 +1,57 @@
+import lombok.Builder;
+import java.util.*;
+public @Builder class BuilderDefaultsGenerics<N extends Number, T, R extends List<T>> {
+ public static @java.lang.SuppressWarnings("all") class BuilderDefaultsGenericsBuilder<N extends Number, T, R extends List<T>> {
+ private @java.lang.SuppressWarnings("all") java.util.concurrent.Callable<N> callable;
+ private @java.lang.SuppressWarnings("all") boolean callable$set;
+ private @java.lang.SuppressWarnings("all") T tee;
+ private @java.lang.SuppressWarnings("all") boolean tee$set;
+ private @java.lang.SuppressWarnings("all") R arrr;
+ private @java.lang.SuppressWarnings("all") boolean arrr$set;
+ @java.lang.SuppressWarnings("all") BuilderDefaultsGenericsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsGenericsBuilder<N, T, R> callable(final java.util.concurrent.Callable<N> callable) {
+ this.callable = callable;
+ callable$set = true;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsGenericsBuilder<N, T, R> tee(final T tee) {
+ this.tee = tee;
+ tee$set = true;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsGenericsBuilder<N, T, R> arrr(final R arrr) {
+ this.arrr = arrr;
+ arrr$set = true;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsGenerics<N, T, R> build() {
+ return new BuilderDefaultsGenerics<N, T, R>((callable$set ? callable : BuilderDefaultsGenerics.<N, T, R>$default$callable()), (tee$set ? tee : BuilderDefaultsGenerics.<N, T, R>$default$tee()), (arrr$set ? arrr : BuilderDefaultsGenerics.<N, T, R>$default$arrr()));
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((("BuilderDefaultsGenerics.BuilderDefaultsGenericsBuilder(callable=" + this.callable) + ", tee=") + this.tee) + ", arrr=") + this.arrr) + ")");
+ }
+ }
+ private @Builder.Default java.util.concurrent.Callable<N> callable;
+ private @Builder.Default T tee;
+ private @Builder.Default R arrr;
+ private static @java.lang.SuppressWarnings("all") <N extends Number, T, R extends List<T>>java.util.concurrent.Callable<N> $default$callable() {
+ return null;
+ }
+ private static @java.lang.SuppressWarnings("all") <N extends Number, T, R extends List<T>>T $default$tee() {
+ return null;
+ }
+ private static @java.lang.SuppressWarnings("all") <N extends Number, T, R extends List<T>>R $default$arrr() {
+ return null;
+ }
+ @java.lang.SuppressWarnings("all") BuilderDefaultsGenerics(final java.util.concurrent.Callable<N> callable, final T tee, final R arrr) {
+ super();
+ this.callable = callable;
+ this.tee = tee;
+ this.arrr = arrr;
+ }
+ public static @java.lang.SuppressWarnings("all") <N extends Number, T, R extends List<T>>BuilderDefaultsGenericsBuilder<N, T, R> builder() {
+ return new BuilderDefaultsGenericsBuilder<N, T, R>();
+ }
+}
diff --git a/test/transform/resource/after-ecj/BuilderDefaultsWarnings.java b/test/transform/resource/after-ecj/BuilderDefaultsWarnings.java
new file mode 100644
index 00000000..236632d0
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderDefaultsWarnings.java
@@ -0,0 +1,87 @@
+import lombok.Builder;
+import lombok.Singular;
+public @Builder class BuilderDefaultsWarnings {
+ public static @java.lang.SuppressWarnings("all") class BuilderDefaultsWarningsBuilder {
+ private @java.lang.SuppressWarnings("all") long x;
+ private @java.lang.SuppressWarnings("all") int z;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<String> items;
+ @java.lang.SuppressWarnings("all") BuilderDefaultsWarningsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsWarningsBuilder x(final long x) {
+ this.x = x;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsWarningsBuilder z(final int z) {
+ this.z = z;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsWarningsBuilder item(String item) {
+ if ((this.items == null))
+ this.items = new java.util.ArrayList<String>();
+ this.items.add(item);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsWarningsBuilder items(java.util.Collection<? extends String> items) {
+ if ((this.items == null))
+ this.items = new java.util.ArrayList<String>();
+ this.items.addAll(items);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsWarningsBuilder clearItems() {
+ if ((this.items != null))
+ this.items.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderDefaultsWarnings build() {
+ java.util.List<String> items;
+ switch (((this.items == null) ? 0 : this.items.size())) {
+ case 0 :
+ items = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ items = java.util.Collections.singletonList(this.items.get(0));
+ break;
+ default :
+ items = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.items));
+ }
+ return new BuilderDefaultsWarnings(x, z, items);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((("BuilderDefaultsWarnings.BuilderDefaultsWarningsBuilder(x=" + this.x) + ", z=") + this.z) + ", items=") + this.items) + ")");
+ }
+ }
+ long x = System.currentTimeMillis();
+ final int y = 5;
+ @Builder.Default int z;
+ @Builder.Default @Singular java.util.List<String> items;
+ @java.lang.SuppressWarnings("all") BuilderDefaultsWarnings(final long x, final int z, final java.util.List<String> items) {
+ super();
+ this.x = x;
+ this.z = z;
+ this.items = items;
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderDefaultsWarningsBuilder builder() {
+ return new BuilderDefaultsWarningsBuilder();
+ }
+}
+class NoBuilderButHasDefaults {
+ public static @java.lang.SuppressWarnings("all") class NoBuilderButHasDefaultsBuilder {
+ @java.lang.SuppressWarnings("all") NoBuilderButHasDefaultsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") NoBuilderButHasDefaults build() {
+ return new NoBuilderButHasDefaults();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return "NoBuilderButHasDefaults.NoBuilderButHasDefaultsBuilder()";
+ }
+ }
+ private final @Builder.Default long z = 5;
+ public @Builder NoBuilderButHasDefaults() {
+ super();
+ }
+ public static @java.lang.SuppressWarnings("all") NoBuilderButHasDefaultsBuilder builder() {
+ return new NoBuilderButHasDefaultsBuilder();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/BuilderGenericMethod.java b/test/transform/resource/after-ecj/BuilderGenericMethod.java
new file mode 100644
index 00000000..1b770654
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderGenericMethod.java
@@ -0,0 +1,35 @@
+import java.util.List;
+import lombok.Builder;
+import java.util.*;
+class BuilderGenericMethod<T> {
+ public @java.lang.SuppressWarnings("all") class MapBuilder<N extends Number> {
+ private @java.lang.SuppressWarnings("all") int a;
+ private @java.lang.SuppressWarnings("all") long b;
+ @java.lang.SuppressWarnings("all") MapBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") MapBuilder<N> a(final int a) {
+ this.a = a;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") MapBuilder<N> b(final long b) {
+ this.b = b;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") Map<N, T> build() {
+ return BuilderGenericMethod.this.<N>foo(a, b);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((("BuilderGenericMethod.MapBuilder(a=" + this.a) + ", b=") + this.b) + ")");
+ }
+ }
+ BuilderGenericMethod() {
+ super();
+ }
+ public @Builder <N extends Number>Map<N, T> foo(int a, long b) {
+ return null;
+ }
+ public @java.lang.SuppressWarnings("all") <N extends Number>MapBuilder<N> builder() {
+ return new MapBuilder<N>();
+ }
+}
diff --git a/test/transform/resource/after-ecj/BuilderInstanceMethod.java b/test/transform/resource/after-ecj/BuilderInstanceMethod.java
new file mode 100644
index 00000000..5f57aef7
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderInstanceMethod.java
@@ -0,0 +1,43 @@
+import java.util.List;
+class BuilderInstanceMethod<T> {
+ public @java.lang.SuppressWarnings("all") class StringBuilder {
+ private @java.lang.SuppressWarnings("all") int show;
+ private @java.lang.SuppressWarnings("all") int yes;
+ private @java.lang.SuppressWarnings("all") List<T> also;
+ private @java.lang.SuppressWarnings("all") int $andMe;
+ @java.lang.SuppressWarnings("all") StringBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") StringBuilder show(final int show) {
+ this.show = show;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") StringBuilder yes(final int yes) {
+ this.yes = yes;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") StringBuilder also(final List<T> also) {
+ this.also = also;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") StringBuilder $andMe(final int $andMe) {
+ this.$andMe = $andMe;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") String build() {
+ return BuilderInstanceMethod.this.create(show, yes, also, $andMe);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((((("BuilderInstanceMethod.StringBuilder(show=" + this.show) + ", yes=") + this.yes) + ", also=") + this.also) + ", $andMe=") + this.$andMe) + ")");
+ }
+ }
+ BuilderInstanceMethod() {
+ super();
+ }
+ public @lombok.Builder String create(int show, final int yes, List<T> also, int $andMe) {
+ return (((("" + show) + yes) + also) + $andMe);
+ }
+ public @java.lang.SuppressWarnings("all") StringBuilder builder() {
+ return new StringBuilder();
+ }
+}
diff --git a/test/transform/resource/after-ecj/BuilderSimple.java b/test/transform/resource/after-ecj/BuilderSimple.java
index 85db360d..bc0ff186 100644
--- a/test/transform/resource/after-ecj/BuilderSimple.java
+++ b/test/transform/resource/after-ecj/BuilderSimple.java
@@ -1,8 +1,8 @@
import java.util.List;
-@lombok.experimental.Builder class BuilderSimple<T> {
+@lombok.Builder class BuilderSimple<T> {
public static @java.lang.SuppressWarnings("all") class BuilderSimpleBuilder<T> {
- private int yes;
- private List<T> also;
+ private @java.lang.SuppressWarnings("all") int yes;
+ private @java.lang.SuppressWarnings("all") List<T> also;
@java.lang.SuppressWarnings("all") BuilderSimpleBuilder() {
super();
}
diff --git a/test/transform/resource/after-ecj/BuilderSingularGuavaListsSets.java b/test/transform/resource/after-ecj/BuilderSingularGuavaListsSets.java
new file mode 100644
index 00000000..12c2b293
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderSingularGuavaListsSets.java
@@ -0,0 +1,125 @@
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableCollection;
+import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.ImmutableSortedSet;
+import com.google.common.collect.ImmutableTable;
+import lombok.Singular;
+@lombok.Builder class BuilderSingularGuavaListsSets<T> {
+ public static @java.lang.SuppressWarnings("all") class BuilderSingularGuavaListsSetsBuilder<T> {
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableList.Builder<T> cards;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableList.Builder<Number> frogs;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableSet.Builder<java.lang.Object> rawSet;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableSortedSet.Builder<String> passes;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableTable.Builder<Number, Number, String> users;
+ @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> card(T card) {
+ if ((this.cards == null))
+ this.cards = com.google.common.collect.ImmutableList.builder();
+ this.cards.add(card);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> cards(java.lang.Iterable<? extends T> cards) {
+ if ((this.cards == null))
+ this.cards = com.google.common.collect.ImmutableList.builder();
+ this.cards.addAll(cards);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> clearCards() {
+ this.cards = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> frog(Number frog) {
+ if ((this.frogs == null))
+ this.frogs = com.google.common.collect.ImmutableList.builder();
+ this.frogs.add(frog);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> frogs(java.lang.Iterable<? extends Number> frogs) {
+ if ((this.frogs == null))
+ this.frogs = com.google.common.collect.ImmutableList.builder();
+ this.frogs.addAll(frogs);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> clearFrogs() {
+ this.frogs = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> rawSet(java.lang.Object rawSet) {
+ if ((this.rawSet == null))
+ this.rawSet = com.google.common.collect.ImmutableSet.builder();
+ this.rawSet.add(rawSet);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> rawSet(java.lang.Iterable<?> rawSet) {
+ if ((this.rawSet == null))
+ this.rawSet = com.google.common.collect.ImmutableSet.builder();
+ this.rawSet.addAll(rawSet);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> clearRawSet() {
+ this.rawSet = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> pass(String pass) {
+ if ((this.passes == null))
+ this.passes = com.google.common.collect.ImmutableSortedSet.naturalOrder();
+ this.passes.add(pass);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> passes(java.lang.Iterable<? extends String> passes) {
+ if ((this.passes == null))
+ this.passes = com.google.common.collect.ImmutableSortedSet.naturalOrder();
+ this.passes.addAll(passes);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> clearPasses() {
+ this.passes = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> user(Number rowKey, Number columnKey, String value) {
+ if ((this.users == null))
+ this.users = com.google.common.collect.ImmutableTable.builder();
+ this.users.put(rowKey, columnKey, value);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> users(com.google.common.collect.Table<? extends Number, ? extends Number, ? extends String> users) {
+ if ((this.users == null))
+ this.users = com.google.common.collect.ImmutableTable.builder();
+ this.users.putAll(users);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSetsBuilder<T> clearUsers() {
+ this.users = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSets<T> build() {
+ com.google.common.collect.ImmutableList<T> cards = ((this.cards == null) ? com.google.common.collect.ImmutableList.<T>of() : this.cards.build());
+ com.google.common.collect.ImmutableCollection<Number> frogs = ((this.frogs == null) ? com.google.common.collect.ImmutableList.<Number>of() : this.frogs.build());
+ com.google.common.collect.ImmutableSet<java.lang.Object> rawSet = ((this.rawSet == null) ? com.google.common.collect.ImmutableSet.<java.lang.Object>of() : this.rawSet.build());
+ com.google.common.collect.ImmutableSortedSet<String> passes = ((this.passes == null) ? com.google.common.collect.ImmutableSortedSet.<String>of() : this.passes.build());
+ com.google.common.collect.ImmutableTable<Number, Number, String> users = ((this.users == null) ? com.google.common.collect.ImmutableTable.<Number, Number, String>of() : this.users.build());
+ return new BuilderSingularGuavaListsSets<T>(cards, frogs, rawSet, passes, users);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((((((("BuilderSingularGuavaListsSets.BuilderSingularGuavaListsSetsBuilder(cards=" + this.cards) + ", frogs=") + this.frogs) + ", rawSet=") + this.rawSet) + ", passes=") + this.passes) + ", users=") + this.users) + ")");
+ }
+ }
+ private @Singular ImmutableList<T> cards;
+ private @Singular ImmutableCollection<? extends Number> frogs;
+ private @SuppressWarnings("all") @Singular("rawSet") ImmutableSet rawSet;
+ private @Singular ImmutableSortedSet<String> passes;
+ private @Singular ImmutableTable<? extends Number, ? extends Number, String> users;
+ @java.lang.SuppressWarnings("all") BuilderSingularGuavaListsSets(final ImmutableList<T> cards, final ImmutableCollection<? extends Number> frogs, final ImmutableSet rawSet, final ImmutableSortedSet<String> passes, final ImmutableTable<? extends Number, ? extends Number, String> users) {
+ super();
+ this.cards = cards;
+ this.frogs = frogs;
+ this.rawSet = rawSet;
+ this.passes = passes;
+ this.users = users;
+ }
+ public static @java.lang.SuppressWarnings("all") <T>BuilderSingularGuavaListsSetsBuilder<T> builder() {
+ return new BuilderSingularGuavaListsSetsBuilder<T>();
+ }
+}
diff --git a/test/transform/resource/after-ecj/BuilderSingularGuavaMaps.java b/test/transform/resource/after-ecj/BuilderSingularGuavaMaps.java
new file mode 100644
index 00000000..44533ac1
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderSingularGuavaMaps.java
@@ -0,0 +1,83 @@
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableBiMap;
+import com.google.common.collect.ImmutableSortedMap;
+import lombok.Singular;
+@lombok.Builder class BuilderSingularGuavaMaps<K, V> {
+ public static @java.lang.SuppressWarnings("all") class BuilderSingularGuavaMapsBuilder<K, V> {
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableMap.Builder<K, V> battleaxes;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableSortedMap.Builder<Integer, V> vertices;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableBiMap.Builder<java.lang.Object, java.lang.Object> rawMap;
+ @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> battleaxe(K key, V value) {
+ if ((this.battleaxes == null))
+ this.battleaxes = com.google.common.collect.ImmutableMap.builder();
+ this.battleaxes.put(key, value);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> battleaxes(java.util.Map<? extends K, ? extends V> battleaxes) {
+ if ((this.battleaxes == null))
+ this.battleaxes = com.google.common.collect.ImmutableMap.builder();
+ this.battleaxes.putAll(battleaxes);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> clearBattleaxes() {
+ this.battleaxes = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> vertex(Integer key, V value) {
+ if ((this.vertices == null))
+ this.vertices = com.google.common.collect.ImmutableSortedMap.naturalOrder();
+ this.vertices.put(key, value);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> vertices(java.util.Map<? extends Integer, ? extends V> vertices) {
+ if ((this.vertices == null))
+ this.vertices = com.google.common.collect.ImmutableSortedMap.naturalOrder();
+ this.vertices.putAll(vertices);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> clearVertices() {
+ this.vertices = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> rawMap(java.lang.Object key, java.lang.Object value) {
+ if ((this.rawMap == null))
+ this.rawMap = com.google.common.collect.ImmutableBiMap.builder();
+ this.rawMap.put(key, value);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> rawMap(java.util.Map<?, ?> rawMap) {
+ if ((this.rawMap == null))
+ this.rawMap = com.google.common.collect.ImmutableBiMap.builder();
+ this.rawMap.putAll(rawMap);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMapsBuilder<K, V> clearRawMap() {
+ this.rawMap = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularGuavaMaps<K, V> build() {
+ com.google.common.collect.ImmutableMap<K, V> battleaxes = ((this.battleaxes == null) ? com.google.common.collect.ImmutableMap.<K, V>of() : this.battleaxes.build());
+ com.google.common.collect.ImmutableSortedMap<Integer, V> vertices = ((this.vertices == null) ? com.google.common.collect.ImmutableSortedMap.<Integer, V>of() : this.vertices.build());
+ com.google.common.collect.ImmutableBiMap<java.lang.Object, java.lang.Object> rawMap = ((this.rawMap == null) ? com.google.common.collect.ImmutableBiMap.<java.lang.Object, java.lang.Object>of() : this.rawMap.build());
+ return new BuilderSingularGuavaMaps<K, V>(battleaxes, vertices, rawMap);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((("BuilderSingularGuavaMaps.BuilderSingularGuavaMapsBuilder(battleaxes=" + this.battleaxes) + ", vertices=") + this.vertices) + ", rawMap=") + this.rawMap) + ")");
+ }
+ }
+ private @Singular ImmutableMap<K, V> battleaxes;
+ private @Singular ImmutableSortedMap<Integer, ? extends V> vertices;
+ private @SuppressWarnings("all") @Singular("rawMap") ImmutableBiMap rawMap;
+ @java.lang.SuppressWarnings("all") BuilderSingularGuavaMaps(final ImmutableMap<K, V> battleaxes, final ImmutableSortedMap<Integer, ? extends V> vertices, final ImmutableBiMap rawMap) {
+ super();
+ this.battleaxes = battleaxes;
+ this.vertices = vertices;
+ this.rawMap = rawMap;
+ }
+ public static @java.lang.SuppressWarnings("all") <K, V>BuilderSingularGuavaMapsBuilder<K, V> builder() {
+ return new BuilderSingularGuavaMapsBuilder<K, V>();
+ }
+}
diff --git a/test/transform/resource/after-ecj/BuilderSingularLists.java b/test/transform/resource/after-ecj/BuilderSingularLists.java
new file mode 100644
index 00000000..3e093e1a
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderSingularLists.java
@@ -0,0 +1,116 @@
+import java.util.List;
+import java.util.Collection;
+
+import lombok.Singular;
+@lombok.Builder class BuilderSingularLists<T> {
+ public static @java.lang.SuppressWarnings("all") class BuilderSingularListsBuilder<T> {
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<T> children;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<Number> scarves;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<java.lang.Object> rawList;
+ @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> child(T child) {
+ if ((this.children == null))
+ this.children = new java.util.ArrayList<T>();
+ this.children.add(child);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> children(java.util.Collection<? extends T> children) {
+ if ((this.children == null))
+ this.children = new java.util.ArrayList<T>();
+ this.children.addAll(children);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> clearChildren() {
+ if ((this.children != null))
+ this.children.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> scarf(Number scarf) {
+ if ((this.scarves == null))
+ this.scarves = new java.util.ArrayList<Number>();
+ this.scarves.add(scarf);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> scarves(java.util.Collection<? extends Number> scarves) {
+ if ((this.scarves == null))
+ this.scarves = new java.util.ArrayList<Number>();
+ this.scarves.addAll(scarves);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> clearScarves() {
+ if ((this.scarves != null))
+ this.scarves.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> rawList(java.lang.Object rawList) {
+ if ((this.rawList == null))
+ this.rawList = new java.util.ArrayList<java.lang.Object>();
+ this.rawList.add(rawList);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> rawList(java.util.Collection<?> rawList) {
+ if ((this.rawList == null))
+ this.rawList = new java.util.ArrayList<java.lang.Object>();
+ this.rawList.addAll(rawList);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularListsBuilder<T> clearRawList() {
+ if ((this.rawList != null))
+ this.rawList.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularLists<T> build() {
+ java.util.List<T> children;
+ switch (((this.children == null) ? 0 : this.children.size())) {
+ case 0 :
+ children = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ children = java.util.Collections.singletonList(this.children.get(0));
+ break;
+ default :
+ children = java.util.Collections.unmodifiableList(new java.util.ArrayList<T>(this.children));
+ }
+ java.util.Collection<Number> scarves;
+ switch (((this.scarves == null) ? 0 : this.scarves.size())) {
+ case 0 :
+ scarves = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ scarves = java.util.Collections.singletonList(this.scarves.get(0));
+ break;
+ default :
+ scarves = java.util.Collections.unmodifiableList(new java.util.ArrayList<Number>(this.scarves));
+ }
+ java.util.List<java.lang.Object> rawList;
+ switch (((this.rawList == null) ? 0 : this.rawList.size())) {
+ case 0 :
+ rawList = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ rawList = java.util.Collections.singletonList(this.rawList.get(0));
+ break;
+ default :
+ rawList = java.util.Collections.unmodifiableList(new java.util.ArrayList<java.lang.Object>(this.rawList));
+ }
+ return new BuilderSingularLists<T>(children, scarves, rawList);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((("BuilderSingularLists.BuilderSingularListsBuilder(children=" + this.children) + ", scarves=") + this.scarves) + ", rawList=") + this.rawList) + ")");
+ }
+ }
+ private @Singular List<T> children;
+ private @Singular Collection<? extends Number> scarves;
+ private @SuppressWarnings("all") @Singular("rawList") List rawList;
+ @java.lang.SuppressWarnings("all") BuilderSingularLists(final List<T> children, final Collection<? extends Number> scarves, final List rawList) {
+ super();
+ this.children = children;
+ this.scarves = scarves;
+ this.rawList = rawList;
+ }
+ public static @java.lang.SuppressWarnings("all") <T>BuilderSingularListsBuilder<T> builder() {
+ return new BuilderSingularListsBuilder<T>();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/BuilderSingularMaps.java b/test/transform/resource/after-ecj/BuilderSingularMaps.java
new file mode 100644
index 00000000..efcf5ef5
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderSingularMaps.java
@@ -0,0 +1,209 @@
+import java.util.Map;
+import java.util.SortedMap;
+import lombok.Singular;
+@lombok.Builder class BuilderSingularMaps<K, V> {
+ public static @java.lang.SuppressWarnings("all") class BuilderSingularMapsBuilder<K, V> {
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<K> women$key;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<V> women$value;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<K> men$key;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<Number> men$value;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<java.lang.Object> rawMap$key;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<java.lang.Object> rawMap$value;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<String> stringMap$key;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<V> stringMap$value;
+ @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> woman(K womanKey, V womanValue) {
+ if ((this.women$key == null))
+ {
+ this.women$key = new java.util.ArrayList<K>();
+ this.women$value = new java.util.ArrayList<V>();
+ }
+ this.women$key.add(womanKey);
+ this.women$value.add(womanValue);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> women(java.util.Map<? extends K, ? extends V> women) {
+ if ((this.women$key == null))
+ {
+ this.women$key = new java.util.ArrayList<K>();
+ this.women$value = new java.util.ArrayList<V>();
+ }
+ for (java.util.Map.Entry<? extends K, ? extends V> $lombokEntry : women.entrySet())
+ {
+ this.women$key.add($lombokEntry.getKey());
+ this.women$value.add($lombokEntry.getValue());
+ }
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> clearWomen() {
+ if ((this.women$key != null))
+ {
+ this.women$key.clear();
+ this.women$value.clear();
+ }
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> man(K manKey, Number manValue) {
+ if ((this.men$key == null))
+ {
+ this.men$key = new java.util.ArrayList<K>();
+ this.men$value = new java.util.ArrayList<Number>();
+ }
+ this.men$key.add(manKey);
+ this.men$value.add(manValue);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> men(java.util.Map<? extends K, ? extends Number> men) {
+ if ((this.men$key == null))
+ {
+ this.men$key = new java.util.ArrayList<K>();
+ this.men$value = new java.util.ArrayList<Number>();
+ }
+ for (java.util.Map.Entry<? extends K, ? extends Number> $lombokEntry : men.entrySet())
+ {
+ this.men$key.add($lombokEntry.getKey());
+ this.men$value.add($lombokEntry.getValue());
+ }
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> clearMen() {
+ if ((this.men$key != null))
+ {
+ this.men$key.clear();
+ this.men$value.clear();
+ }
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> rawMap(java.lang.Object rawMapKey, java.lang.Object rawMapValue) {
+ if ((this.rawMap$key == null))
+ {
+ this.rawMap$key = new java.util.ArrayList<java.lang.Object>();
+ this.rawMap$value = new java.util.ArrayList<java.lang.Object>();
+ }
+ this.rawMap$key.add(rawMapKey);
+ this.rawMap$value.add(rawMapValue);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> rawMap(java.util.Map<?, ?> rawMap) {
+ if ((this.rawMap$key == null))
+ {
+ this.rawMap$key = new java.util.ArrayList<java.lang.Object>();
+ this.rawMap$value = new java.util.ArrayList<java.lang.Object>();
+ }
+ for (java.util.Map.Entry<?, ?> $lombokEntry : rawMap.entrySet())
+ {
+ this.rawMap$key.add($lombokEntry.getKey());
+ this.rawMap$value.add($lombokEntry.getValue());
+ }
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> clearRawMap() {
+ if ((this.rawMap$key != null))
+ {
+ this.rawMap$key.clear();
+ this.rawMap$value.clear();
+ }
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> stringMap(String stringMapKey, V stringMapValue) {
+ if ((this.stringMap$key == null))
+ {
+ this.stringMap$key = new java.util.ArrayList<String>();
+ this.stringMap$value = new java.util.ArrayList<V>();
+ }
+ this.stringMap$key.add(stringMapKey);
+ this.stringMap$value.add(stringMapValue);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> stringMap(java.util.Map<? extends String, ? extends V> stringMap) {
+ if ((this.stringMap$key == null))
+ {
+ this.stringMap$key = new java.util.ArrayList<String>();
+ this.stringMap$value = new java.util.ArrayList<V>();
+ }
+ for (java.util.Map.Entry<? extends String, ? extends V> $lombokEntry : stringMap.entrySet())
+ {
+ this.stringMap$key.add($lombokEntry.getKey());
+ this.stringMap$value.add($lombokEntry.getValue());
+ }
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMapsBuilder<K, V> clearStringMap() {
+ if ((this.stringMap$key != null))
+ {
+ this.stringMap$key.clear();
+ this.stringMap$value.clear();
+ }
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularMaps<K, V> build() {
+ java.util.Map<K, V> women;
+ switch (((this.women$key == null) ? 0 : this.women$key.size())) {
+ case 0 :
+ women = java.util.Collections.emptyMap();
+ break;
+ case 1 :
+ women = java.util.Collections.singletonMap(this.women$key.get(0), this.women$value.get(0));
+ break;
+ default :
+ women = new java.util.LinkedHashMap<K, V>(((this.women$key.size() < 0x40000000) ? ((1 + this.women$key.size()) + ((this.women$key.size() - 3) / 3)) : java.lang.Integer.MAX_VALUE));
+ for (int $i = 0;; ($i < this.women$key.size()); $i ++)
+ women.put(this.women$key.get($i), this.women$value.get($i));
+ women = java.util.Collections.unmodifiableMap(women);
+ }
+ java.util.SortedMap<K, Number> men = new java.util.TreeMap<K, Number>();
+ if ((this.men$key != null))
+ for (int $i = 0;; ($i < ((this.men$key == null) ? 0 : this.men$key.size())); $i ++)
+ men.put(this.men$key.get($i), this.men$value.get($i));
+ men = java.util.Collections.unmodifiableSortedMap(men);
+ java.util.Map<java.lang.Object, java.lang.Object> rawMap;
+ switch (((this.rawMap$key == null) ? 0 : this.rawMap$key.size())) {
+ case 0 :
+ rawMap = java.util.Collections.emptyMap();
+ break;
+ case 1 :
+ rawMap = java.util.Collections.singletonMap(this.rawMap$key.get(0), this.rawMap$value.get(0));
+ break;
+ default :
+ rawMap = new java.util.LinkedHashMap<java.lang.Object, java.lang.Object>(((this.rawMap$key.size() < 0x40000000) ? ((1 + this.rawMap$key.size()) + ((this.rawMap$key.size() - 3) / 3)) : java.lang.Integer.MAX_VALUE));
+ for (int $i = 0;; ($i < this.rawMap$key.size()); $i ++)
+ rawMap.put(this.rawMap$key.get($i), this.rawMap$value.get($i));
+ rawMap = java.util.Collections.unmodifiableMap(rawMap);
+ }
+ java.util.Map<String, V> stringMap;
+ switch (((this.stringMap$key == null) ? 0 : this.stringMap$key.size())) {
+ case 0 :
+ stringMap = java.util.Collections.emptyMap();
+ break;
+ case 1 :
+ stringMap = java.util.Collections.singletonMap(this.stringMap$key.get(0), this.stringMap$value.get(0));
+ break;
+ default :
+ stringMap = new java.util.LinkedHashMap<String, V>(((this.stringMap$key.size() < 0x40000000) ? ((1 + this.stringMap$key.size()) + ((this.stringMap$key.size() - 3) / 3)) : java.lang.Integer.MAX_VALUE));
+ for (int $i = 0;; ($i < this.stringMap$key.size()); $i ++)
+ stringMap.put(this.stringMap$key.get($i), this.stringMap$value.get($i));
+ stringMap = java.util.Collections.unmodifiableMap(stringMap);
+ }
+ return new BuilderSingularMaps<K, V>(women, men, rawMap, stringMap);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((((((((((((("BuilderSingularMaps.BuilderSingularMapsBuilder(women$key=" + this.women$key) + ", women$value=") + this.women$value) + ", men$key=") + this.men$key) + ", men$value=") + this.men$value) + ", rawMap$key=") + this.rawMap$key) + ", rawMap$value=") + this.rawMap$value) + ", stringMap$key=") + this.stringMap$key) + ", stringMap$value=") + this.stringMap$value) + ")");
+ }
+ }
+ private @Singular Map<K, V> women;
+ private @Singular SortedMap<K, ? extends Number> men;
+ private @SuppressWarnings("all") @Singular("rawMap") Map rawMap;
+ private @Singular("stringMap") Map<String, V> stringMap;
+ @java.lang.SuppressWarnings("all") BuilderSingularMaps(final Map<K, V> women, final SortedMap<K, ? extends Number> men, final Map rawMap, final Map<String, V> stringMap) {
+ super();
+ this.women = women;
+ this.men = men;
+ this.rawMap = rawMap;
+ this.stringMap = stringMap;
+ }
+ public static @java.lang.SuppressWarnings("all") <K, V>BuilderSingularMapsBuilder<K, V> builder() {
+ return new BuilderSingularMapsBuilder<K, V>();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/BuilderSingularNoAuto.java b/test/transform/resource/after-ecj/BuilderSingularNoAuto.java
new file mode 100644
index 00000000..fa38efc3
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderSingularNoAuto.java
@@ -0,0 +1,114 @@
+import java.util.List;
+import lombok.Singular;
+@lombok.Builder class BuilderSingularNoAuto {
+ public static @java.lang.SuppressWarnings("all") class BuilderSingularNoAutoBuilder {
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<String> things;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<String> widgets;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<String> items;
+ @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder things(String things) {
+ if ((this.things == null))
+ this.things = new java.util.ArrayList<String>();
+ this.things.add(things);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder things(java.util.Collection<? extends String> things) {
+ if ((this.things == null))
+ this.things = new java.util.ArrayList<String>();
+ this.things.addAll(things);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder clearThings() {
+ if ((this.things != null))
+ this.things.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder widget(String widget) {
+ if ((this.widgets == null))
+ this.widgets = new java.util.ArrayList<String>();
+ this.widgets.add(widget);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder widgets(java.util.Collection<? extends String> widgets) {
+ if ((this.widgets == null))
+ this.widgets = new java.util.ArrayList<String>();
+ this.widgets.addAll(widgets);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder clearWidgets() {
+ if ((this.widgets != null))
+ this.widgets.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder items(String items) {
+ if ((this.items == null))
+ this.items = new java.util.ArrayList<String>();
+ this.items.add(items);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder items(java.util.Collection<? extends String> items) {
+ if ((this.items == null))
+ this.items = new java.util.ArrayList<String>();
+ this.items.addAll(items);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder clearItems() {
+ if ((this.items != null))
+ this.items.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularNoAuto build() {
+ java.util.List<String> things;
+ switch (((this.things == null) ? 0 : this.things.size())) {
+ case 0 :
+ things = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ things = java.util.Collections.singletonList(this.things.get(0));
+ break;
+ default :
+ things = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.things));
+ }
+ java.util.List<String> widgets;
+ switch (((this.widgets == null) ? 0 : this.widgets.size())) {
+ case 0 :
+ widgets = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ widgets = java.util.Collections.singletonList(this.widgets.get(0));
+ break;
+ default :
+ widgets = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.widgets));
+ }
+ java.util.List<String> items;
+ switch (((this.items == null) ? 0 : this.items.size())) {
+ case 0 :
+ items = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ items = java.util.Collections.singletonList(this.items.get(0));
+ break;
+ default :
+ items = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.items));
+ }
+ return new BuilderSingularNoAuto(things, widgets, items);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((("BuilderSingularNoAuto.BuilderSingularNoAutoBuilder(things=" + this.things) + ", widgets=") + this.widgets) + ", items=") + this.items) + ")");
+ }
+ }
+ private @Singular List<String> things;
+ private @Singular("widget") List<String> widgets;
+ private @Singular List<String> items;
+ @java.lang.SuppressWarnings("all") BuilderSingularNoAuto(final List<String> things, final List<String> widgets, final List<String> items) {
+ super();
+ this.things = things;
+ this.widgets = widgets;
+ this.items = items;
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderSingularNoAutoBuilder builder() {
+ return new BuilderSingularNoAutoBuilder();
+ }
+}
diff --git a/test/transform/resource/after-ecj/BuilderSingularRedirectToGuava.java b/test/transform/resource/after-ecj/BuilderSingularRedirectToGuava.java
new file mode 100644
index 00000000..4823e46e
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderSingularRedirectToGuava.java
@@ -0,0 +1,83 @@
+import java.util.Set;
+import java.util.NavigableMap;
+import java.util.Collection;
+import lombok.Singular;
+@lombok.Builder class BuilderSingularRedirectToGuava {
+ public static @java.lang.SuppressWarnings("all") class BuilderSingularRedirectToGuavaBuilder {
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableSet.Builder<String> dangerMice;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableSortedMap.Builder<Integer, Number> things;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableList.Builder<Class<?>> doohickeys;
+ @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder dangerMouse(String dangerMouse) {
+ if ((this.dangerMice == null))
+ this.dangerMice = com.google.common.collect.ImmutableSet.builder();
+ this.dangerMice.add(dangerMouse);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder dangerMice(java.lang.Iterable<? extends String> dangerMice) {
+ if ((this.dangerMice == null))
+ this.dangerMice = com.google.common.collect.ImmutableSet.builder();
+ this.dangerMice.addAll(dangerMice);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder clearDangerMice() {
+ this.dangerMice = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder thing(Integer key, Number value) {
+ if ((this.things == null))
+ this.things = com.google.common.collect.ImmutableSortedMap.naturalOrder();
+ this.things.put(key, value);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder things(java.util.Map<? extends Integer, ? extends Number> things) {
+ if ((this.things == null))
+ this.things = com.google.common.collect.ImmutableSortedMap.naturalOrder();
+ this.things.putAll(things);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder clearThings() {
+ this.things = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder doohickey(Class<?> doohickey) {
+ if ((this.doohickeys == null))
+ this.doohickeys = com.google.common.collect.ImmutableList.builder();
+ this.doohickeys.add(doohickey);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder doohickeys(java.lang.Iterable<? extends Class<?>> doohickeys) {
+ if ((this.doohickeys == null))
+ this.doohickeys = com.google.common.collect.ImmutableList.builder();
+ this.doohickeys.addAll(doohickeys);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder clearDoohickeys() {
+ this.doohickeys = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuava build() {
+ java.util.Set<String> dangerMice = ((this.dangerMice == null) ? com.google.common.collect.ImmutableSet.<String>of() : this.dangerMice.build());
+ java.util.NavigableMap<Integer, Number> things = ((this.things == null) ? com.google.common.collect.ImmutableSortedMap.<Integer, Number>of() : this.things.build());
+ java.util.Collection<Class<?>> doohickeys = ((this.doohickeys == null) ? com.google.common.collect.ImmutableList.<Class<?>>of() : this.doohickeys.build());
+ return new BuilderSingularRedirectToGuava(dangerMice, things, doohickeys);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((("BuilderSingularRedirectToGuava.BuilderSingularRedirectToGuavaBuilder(dangerMice=" + this.dangerMice) + ", things=") + this.things) + ", doohickeys=") + this.doohickeys) + ")");
+ }
+ }
+ private @Singular Set<String> dangerMice;
+ private @Singular NavigableMap<Integer, Number> things;
+ private @Singular Collection<Class<?>> doohickeys;
+ @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuava(final Set<String> dangerMice, final NavigableMap<Integer, Number> things, final Collection<Class<?>> doohickeys) {
+ super();
+ this.dangerMice = dangerMice;
+ this.things = things;
+ this.doohickeys = doohickeys;
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderSingularRedirectToGuavaBuilder builder() {
+ return new BuilderSingularRedirectToGuavaBuilder();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/BuilderSingularSets.java b/test/transform/resource/after-ecj/BuilderSingularSets.java
new file mode 100644
index 00000000..bf403831
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderSingularSets.java
@@ -0,0 +1,145 @@
+import java.util.Set;
+import java.util.SortedSet;
+import lombok.Singular;
+@lombok.Builder class BuilderSingularSets<T> {
+ public static @java.lang.SuppressWarnings("all") class BuilderSingularSetsBuilder<T> {
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<T> dangerMice;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<Number> octopodes;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<java.lang.Object> rawSet;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<String> stringSet;
+ @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> dangerMouse(T dangerMouse) {
+ if ((this.dangerMice == null))
+ this.dangerMice = new java.util.ArrayList<T>();
+ this.dangerMice.add(dangerMouse);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> dangerMice(java.util.Collection<? extends T> dangerMice) {
+ if ((this.dangerMice == null))
+ this.dangerMice = new java.util.ArrayList<T>();
+ this.dangerMice.addAll(dangerMice);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> clearDangerMice() {
+ if ((this.dangerMice != null))
+ this.dangerMice.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> octopus(Number octopus) {
+ if ((this.octopodes == null))
+ this.octopodes = new java.util.ArrayList<Number>();
+ this.octopodes.add(octopus);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> octopodes(java.util.Collection<? extends Number> octopodes) {
+ if ((this.octopodes == null))
+ this.octopodes = new java.util.ArrayList<Number>();
+ this.octopodes.addAll(octopodes);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> clearOctopodes() {
+ if ((this.octopodes != null))
+ this.octopodes.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> rawSet(java.lang.Object rawSet) {
+ if ((this.rawSet == null))
+ this.rawSet = new java.util.ArrayList<java.lang.Object>();
+ this.rawSet.add(rawSet);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> rawSet(java.util.Collection<?> rawSet) {
+ if ((this.rawSet == null))
+ this.rawSet = new java.util.ArrayList<java.lang.Object>();
+ this.rawSet.addAll(rawSet);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> clearRawSet() {
+ if ((this.rawSet != null))
+ this.rawSet.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> stringSet(String stringSet) {
+ if ((this.stringSet == null))
+ this.stringSet = new java.util.ArrayList<String>();
+ this.stringSet.add(stringSet);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> stringSet(java.util.Collection<? extends String> stringSet) {
+ if ((this.stringSet == null))
+ this.stringSet = new java.util.ArrayList<String>();
+ this.stringSet.addAll(stringSet);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSetsBuilder<T> clearStringSet() {
+ if ((this.stringSet != null))
+ this.stringSet.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularSets<T> build() {
+ java.util.Set<T> dangerMice;
+ switch (((this.dangerMice == null) ? 0 : this.dangerMice.size())) {
+ case 0 :
+ dangerMice = java.util.Collections.emptySet();
+ break;
+ case 1 :
+ dangerMice = java.util.Collections.singleton(this.dangerMice.get(0));
+ break;
+ default :
+ dangerMice = new java.util.LinkedHashSet<T>(((this.dangerMice.size() < 0x40000000) ? ((1 + this.dangerMice.size()) + ((this.dangerMice.size() - 3) / 3)) : java.lang.Integer.MAX_VALUE));
+ dangerMice.addAll(this.dangerMice);
+ dangerMice = java.util.Collections.unmodifiableSet(dangerMice);
+ }
+ java.util.SortedSet<Number> octopodes = new java.util.TreeSet<Number>();
+ if ((this.octopodes != null))
+ octopodes.addAll(this.octopodes);
+ octopodes = java.util.Collections.unmodifiableSortedSet(octopodes);
+ java.util.Set<java.lang.Object> rawSet;
+ switch (((this.rawSet == null) ? 0 : this.rawSet.size())) {
+ case 0 :
+ rawSet = java.util.Collections.emptySet();
+ break;
+ case 1 :
+ rawSet = java.util.Collections.singleton(this.rawSet.get(0));
+ break;
+ default :
+ rawSet = new java.util.LinkedHashSet<java.lang.Object>(((this.rawSet.size() < 0x40000000) ? ((1 + this.rawSet.size()) + ((this.rawSet.size() - 3) / 3)) : java.lang.Integer.MAX_VALUE));
+ rawSet.addAll(this.rawSet);
+ rawSet = java.util.Collections.unmodifiableSet(rawSet);
+ }
+ java.util.Set<String> stringSet;
+ switch (((this.stringSet == null) ? 0 : this.stringSet.size())) {
+ case 0 :
+ stringSet = java.util.Collections.emptySet();
+ break;
+ case 1 :
+ stringSet = java.util.Collections.singleton(this.stringSet.get(0));
+ break;
+ default :
+ stringSet = new java.util.LinkedHashSet<String>(((this.stringSet.size() < 0x40000000) ? ((1 + this.stringSet.size()) + ((this.stringSet.size() - 3) / 3)) : java.lang.Integer.MAX_VALUE));
+ stringSet.addAll(this.stringSet);
+ stringSet = java.util.Collections.unmodifiableSet(stringSet);
+ }
+ return new BuilderSingularSets<T>(dangerMice, octopodes, rawSet, stringSet);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((((("BuilderSingularSets.BuilderSingularSetsBuilder(dangerMice=" + this.dangerMice) + ", octopodes=") + this.octopodes) + ", rawSet=") + this.rawSet) + ", stringSet=") + this.stringSet) + ")");
+ }
+ }
+ private @Singular Set<T> dangerMice;
+ private @Singular SortedSet<? extends Number> octopodes;
+ private @SuppressWarnings("all") @Singular("rawSet") Set rawSet;
+ private @Singular("stringSet") Set<String> stringSet;
+ @java.lang.SuppressWarnings("all") BuilderSingularSets(final Set<T> dangerMice, final SortedSet<? extends Number> octopodes, final Set rawSet, final Set<String> stringSet) {
+ super();
+ this.dangerMice = dangerMice;
+ this.octopodes = octopodes;
+ this.rawSet = rawSet;
+ this.stringSet = stringSet;
+ }
+ public static @java.lang.SuppressWarnings("all") <T>BuilderSingularSetsBuilder<T> builder() {
+ return new BuilderSingularSetsBuilder<T>();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/BuilderSingularWithPrefixes.java b/test/transform/resource/after-ecj/BuilderSingularWithPrefixes.java
new file mode 100644
index 00000000..12c299c6
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderSingularWithPrefixes.java
@@ -0,0 +1,51 @@
+import lombok.Singular;
+@lombok.Builder @lombok.experimental.Accessors(prefix = "_") class BuilderSingularWithPrefixes {
+ public static @java.lang.SuppressWarnings("all") class BuilderSingularWithPrefixesBuilder {
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<String> elems;
+ @java.lang.SuppressWarnings("all") BuilderSingularWithPrefixesBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularWithPrefixesBuilder elem(String elem) {
+ if ((this.elems == null))
+ this.elems = new java.util.ArrayList<String>();
+ this.elems.add(elem);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularWithPrefixesBuilder elems(java.util.Collection<? extends String> elems) {
+ if ((this.elems == null))
+ this.elems = new java.util.ArrayList<String>();
+ this.elems.addAll(elems);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularWithPrefixesBuilder clearElems() {
+ if ((this.elems != null))
+ this.elems.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderSingularWithPrefixes build() {
+ java.util.List<String> elems;
+ switch (((this.elems == null) ? 0 : this.elems.size())) {
+ case 0 :
+ elems = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ elems = java.util.Collections.singletonList(this.elems.get(0));
+ break;
+ default :
+ elems = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.elems));
+ }
+ return new BuilderSingularWithPrefixes(elems);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (("BuilderSingularWithPrefixes.BuilderSingularWithPrefixesBuilder(elems=" + this.elems) + ")");
+ }
+ }
+ private @Singular java.util.List<String> _elems;
+ @java.lang.SuppressWarnings("all") BuilderSingularWithPrefixes(final java.util.List<String> elems) {
+ super();
+ this._elems = elems;
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderSingularWithPrefixesBuilder builder() {
+ return new BuilderSingularWithPrefixesBuilder();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/BuilderValueData.java b/test/transform/resource/after-ecj/BuilderValueData.java
new file mode 100644
index 00000000..06456e86
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderValueData.java
@@ -0,0 +1,90 @@
+import java.util.List;
+final @lombok.Builder @lombok.Value class BuilderAndValue {
+ public static @java.lang.SuppressWarnings("all") class BuilderAndValueBuilder {
+ @java.lang.SuppressWarnings("all") BuilderAndValueBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderAndValue build() {
+ return new BuilderAndValue();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return "BuilderAndValue.BuilderAndValueBuilder()";
+ }
+ }
+ private final int zero = 0;
+ @java.lang.SuppressWarnings("all") BuilderAndValue() {
+ super();
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderAndValueBuilder builder() {
+ return new BuilderAndValueBuilder();
+ }
+ public @java.lang.SuppressWarnings("all") int getZero() {
+ return this.zero;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof BuilderAndValue)))
+ return false;
+ final BuilderAndValue other = (BuilderAndValue) o;
+ if ((this.getZero() != other.getZero()))
+ return false;
+ return true;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = ((result * PRIME) + this.getZero());
+ return result;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (("BuilderAndValue(zero=" + this.getZero()) + ")");
+ }
+}
+@lombok.Builder @lombok.Data class BuilderAndData {
+ public static @java.lang.SuppressWarnings("all") class BuilderAndDataBuilder {
+ @java.lang.SuppressWarnings("all") BuilderAndDataBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderAndData build() {
+ return new BuilderAndData();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return "BuilderAndData.BuilderAndDataBuilder()";
+ }
+ }
+ private final int zero = 0;
+ @java.lang.SuppressWarnings("all") BuilderAndData() {
+ super();
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderAndDataBuilder builder() {
+ return new BuilderAndDataBuilder();
+ }
+ public @java.lang.SuppressWarnings("all") int getZero() {
+ return this.zero;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof BuilderAndData)))
+ return false;
+ final BuilderAndData other = (BuilderAndData) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ if ((this.getZero() != other.getZero()))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof BuilderAndData);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = ((result * PRIME) + this.getZero());
+ return result;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (("BuilderAndData(zero=" + this.getZero()) + ")");
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/BuilderWithAccessors.java b/test/transform/resource/after-ecj/BuilderWithAccessors.java
index 79776dc4..a7bee291 100644
--- a/test/transform/resource/after-ecj/BuilderWithAccessors.java
+++ b/test/transform/resource/after-ecj/BuilderWithAccessors.java
@@ -1,9 +1,9 @@
-@lombok.experimental.Builder @lombok.experimental.Accessors(prefix = {"p", "_"}) class BuilderWithAccessors {
+@lombok.Builder @lombok.experimental.Accessors(prefix = {"p", "_"}) class BuilderWithAccessors {
public static @java.lang.SuppressWarnings("all") class BuilderWithAccessorsBuilder {
- private int plower;
- private int upper;
- private int foo;
- private int _bar;
+ private @java.lang.SuppressWarnings("all") int plower;
+ private @java.lang.SuppressWarnings("all") int upper;
+ private @java.lang.SuppressWarnings("all") int foo;
+ private @java.lang.SuppressWarnings("all") int _bar;
@java.lang.SuppressWarnings("all") BuilderWithAccessorsBuilder() {
super();
}
diff --git a/test/transform/resource/after-ecj/BuilderWithDeprecated.java b/test/transform/resource/after-ecj/BuilderWithDeprecated.java
new file mode 100644
index 00000000..09a0b786
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderWithDeprecated.java
@@ -0,0 +1,87 @@
+import com.google.common.collect.ImmutableList;
+import lombok.Builder;
+import lombok.Singular;
+public @Builder class BuilderWithDeprecated {
+ public static @java.lang.SuppressWarnings("all") class BuilderWithDeprecatedBuilder {
+ private @java.lang.SuppressWarnings("all") String dep1;
+ private @java.lang.SuppressWarnings("all") int dep2;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<String> strings;
+ private @java.lang.SuppressWarnings("all") com.google.common.collect.ImmutableList.Builder<Integer> numbers;
+ @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder() {
+ super();
+ }
+ public @java.lang.Deprecated @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder dep1(final String dep1) {
+ this.dep1 = dep1;
+ return this;
+ }
+ public @java.lang.Deprecated @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder dep2(final int dep2) {
+ this.dep2 = dep2;
+ return this;
+ }
+ public @java.lang.Deprecated @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder string(String string) {
+ if ((this.strings == null))
+ this.strings = new java.util.ArrayList<String>();
+ this.strings.add(string);
+ return this;
+ }
+ public @java.lang.Deprecated @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder strings(java.util.Collection<? extends String> strings) {
+ if ((this.strings == null))
+ this.strings = new java.util.ArrayList<String>();
+ this.strings.addAll(strings);
+ return this;
+ }
+ public @java.lang.Deprecated @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder clearStrings() {
+ if ((this.strings != null))
+ this.strings.clear();
+ return this;
+ }
+ public @java.lang.Deprecated @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder number(Integer number) {
+ if ((this.numbers == null))
+ this.numbers = com.google.common.collect.ImmutableList.builder();
+ this.numbers.add(number);
+ return this;
+ }
+ public @java.lang.Deprecated @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder numbers(java.lang.Iterable<? extends Integer> numbers) {
+ if ((this.numbers == null))
+ this.numbers = com.google.common.collect.ImmutableList.builder();
+ this.numbers.addAll(numbers);
+ return this;
+ }
+ public @java.lang.Deprecated @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder clearNumbers() {
+ this.numbers = null;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithDeprecated build() {
+ java.util.List<String> strings;
+ switch (((this.strings == null) ? 0 : this.strings.size())) {
+ case 0 :
+ strings = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ strings = java.util.Collections.singletonList(this.strings.get(0));
+ break;
+ default :
+ strings = java.util.Collections.unmodifiableList(new java.util.ArrayList<String>(this.strings));
+ }
+ com.google.common.collect.ImmutableList<Integer> numbers = ((this.numbers == null) ? com.google.common.collect.ImmutableList.<Integer>of() : this.numbers.build());
+ return new BuilderWithDeprecated(dep1, dep2, strings, numbers);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((((("BuilderWithDeprecated.BuilderWithDeprecatedBuilder(dep1=" + this.dep1) + ", dep2=") + this.dep2) + ", strings=") + this.strings) + ", numbers=") + this.numbers) + ")");
+ }
+ }
+ String dep1;
+ @Deprecated int dep2;
+ @Singular @Deprecated java.util.List<String> strings;
+ @Singular @Deprecated ImmutableList<Integer> numbers;
+ @java.lang.SuppressWarnings("all") BuilderWithDeprecated(final String dep1, final int dep2, final java.util.List<String> strings, final ImmutableList<Integer> numbers) {
+ super();
+ this.dep1 = dep1;
+ this.dep2 = dep2;
+ this.strings = strings;
+ this.numbers = numbers;
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderWithDeprecatedBuilder builder() {
+ return new BuilderWithDeprecatedBuilder();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/BuilderWithExistingBuilderClass.java b/test/transform/resource/after-ecj/BuilderWithExistingBuilderClass.java
index 38cb0038..0e6ba335 100644
--- a/test/transform/resource/after-ecj/BuilderWithExistingBuilderClass.java
+++ b/test/transform/resource/after-ecj/BuilderWithExistingBuilderClass.java
@@ -1,8 +1,8 @@
-import lombok.experimental.Builder;
+import lombok.Builder;
class BuilderWithExistingBuilderClass<T, K extends Number> {
public static class BuilderWithExistingBuilderClassBuilder<Z extends Number> {
- private boolean arg2;
- private String arg3;
+ private @java.lang.SuppressWarnings("all") boolean arg2;
+ private @java.lang.SuppressWarnings("all") String arg3;
private Z arg1;
public void arg2(boolean arg) {
}
diff --git a/test/transform/resource/after-ecj/BuilderWithRecursiveGenerics.java b/test/transform/resource/after-ecj/BuilderWithRecursiveGenerics.java
new file mode 100644
index 00000000..8246ca2c
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderWithRecursiveGenerics.java
@@ -0,0 +1,78 @@
+import java.util.Set;
+import lombok.Builder;
+import lombok.Value;
+public class BuilderWithRecursiveGenerics {
+ interface Inter<T, U extends Inter<T, U>> {
+ }
+ public static final @Builder @Value class Test<Foo, Bar extends Set<Foo>, Quz extends Inter<Bar, Quz>> {
+ public static @java.lang.SuppressWarnings("all") class TestBuilder<Foo, Bar extends Set<Foo>, Quz extends Inter<Bar, Quz>> {
+ private @java.lang.SuppressWarnings("all") Foo foo;
+ private @java.lang.SuppressWarnings("all") Bar bar;
+ @java.lang.SuppressWarnings("all") TestBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") TestBuilder<Foo, Bar, Quz> foo(final Foo foo) {
+ this.foo = foo;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") TestBuilder<Foo, Bar, Quz> bar(final Bar bar) {
+ this.bar = bar;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") Test<Foo, Bar, Quz> build() {
+ return new Test<Foo, Bar, Quz>(foo, bar);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((("BuilderWithRecursiveGenerics.Test.TestBuilder(foo=" + this.foo) + ", bar=") + this.bar) + ")");
+ }
+ }
+ private final Foo foo;
+ private final Bar bar;
+ @java.lang.SuppressWarnings("all") Test(final Foo foo, final Bar bar) {
+ super();
+ this.foo = foo;
+ this.bar = bar;
+ }
+ public static @java.lang.SuppressWarnings("all") <Foo, Bar extends Set<Foo>, Quz extends Inter<Bar, Quz>>TestBuilder<Foo, Bar, Quz> builder() {
+ return new TestBuilder<Foo, Bar, Quz>();
+ }
+ public @java.lang.SuppressWarnings("all") Foo getFoo() {
+ return this.foo;
+ }
+ public @java.lang.SuppressWarnings("all") Bar getBar() {
+ return this.bar;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof BuilderWithRecursiveGenerics.Test)))
+ return false;
+ final BuilderWithRecursiveGenerics.Test<?, ?, ?> other = (BuilderWithRecursiveGenerics.Test<?, ?, ?>) o;
+ final java.lang.Object this$foo = this.getFoo();
+ final java.lang.Object other$foo = other.getFoo();
+ if (((this$foo == null) ? (other$foo != null) : (! this$foo.equals(other$foo))))
+ return false;
+ final java.lang.Object this$bar = this.getBar();
+ final java.lang.Object other$bar = other.getBar();
+ if (((this$bar == null) ? (other$bar != null) : (! this$bar.equals(other$bar))))
+ return false;
+ return true;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ final java.lang.Object $foo = this.getFoo();
+ result = ((result * PRIME) + (($foo == null) ? 43 : $foo.hashCode()));
+ final java.lang.Object $bar = this.getBar();
+ result = ((result * PRIME) + (($bar == null) ? 43 : $bar.hashCode()));
+ return result;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((("BuilderWithRecursiveGenerics.Test(foo=" + this.getFoo()) + ", bar=") + this.getBar()) + ")");
+ }
+ }
+ public BuilderWithRecursiveGenerics() {
+ super();
+ }
+}
+
diff --git a/test/transform/resource/after-ecj/BuilderWithToBuilder.java b/test/transform/resource/after-ecj/BuilderWithToBuilder.java
new file mode 100644
index 00000000..d304293c
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderWithToBuilder.java
@@ -0,0 +1,155 @@
+import java.util.List;
+import lombok.Builder;
+@Builder(toBuilder = true) @lombok.experimental.Accessors(prefix = "m") class BuilderWithToBuilder<T> {
+ public static @java.lang.SuppressWarnings("all") class BuilderWithToBuilderBuilder<T> {
+ private @java.lang.SuppressWarnings("all") String one;
+ private @java.lang.SuppressWarnings("all") String two;
+ private @java.lang.SuppressWarnings("all") T foo;
+ private @java.lang.SuppressWarnings("all") java.util.ArrayList<T> bars;
+ @java.lang.SuppressWarnings("all") BuilderWithToBuilderBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithToBuilderBuilder<T> one(final String one) {
+ this.one = one;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithToBuilderBuilder<T> two(final String two) {
+ this.two = two;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithToBuilderBuilder<T> foo(final T foo) {
+ this.foo = foo;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithToBuilderBuilder<T> bar(T bar) {
+ if ((this.bars == null))
+ this.bars = new java.util.ArrayList<T>();
+ this.bars.add(bar);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithToBuilderBuilder<T> bars(java.util.Collection<? extends T> bars) {
+ if ((this.bars == null))
+ this.bars = new java.util.ArrayList<T>();
+ this.bars.addAll(bars);
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithToBuilderBuilder<T> clearBars() {
+ if ((this.bars != null))
+ this.bars.clear();
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithToBuilder<T> build() {
+ java.util.List<T> bars;
+ switch (((this.bars == null) ? 0 : this.bars.size())) {
+ case 0 :
+ bars = java.util.Collections.emptyList();
+ break;
+ case 1 :
+ bars = java.util.Collections.singletonList(this.bars.get(0));
+ break;
+ default :
+ bars = java.util.Collections.unmodifiableList(new java.util.ArrayList<T>(this.bars));
+ }
+ return new BuilderWithToBuilder<T>(one, two, foo, bars);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((((((("BuilderWithToBuilder.BuilderWithToBuilderBuilder(one=" + this.one) + ", two=") + this.two) + ", foo=") + this.foo) + ", bars=") + this.bars) + ")");
+ }
+ }
+ private String mOne;
+ private String mTwo;
+ private @Builder.ObtainVia(method = "rrr",isStatic = true) T foo;
+ private @lombok.Singular List<T> bars;
+ public static <K>K rrr(BuilderWithToBuilder<K> x) {
+ return x.foo;
+ }
+ @java.lang.SuppressWarnings("all") BuilderWithToBuilder(final String one, final String two, final T foo, final List<T> bars) {
+ super();
+ this.mOne = one;
+ this.mTwo = two;
+ this.foo = foo;
+ this.bars = bars;
+ }
+ public static @java.lang.SuppressWarnings("all") <T>BuilderWithToBuilderBuilder<T> builder() {
+ return new BuilderWithToBuilderBuilder<T>();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithToBuilderBuilder<T> toBuilder() {
+ return new BuilderWithToBuilderBuilder<T>().one(this.mOne).two(this.mTwo).foo(BuilderWithToBuilder.rrr(this)).bars(this.bars);
+ }
+}
+@lombok.experimental.Accessors(prefix = "m") class ConstructorWithToBuilder<T> {
+ public static @java.lang.SuppressWarnings("all") class ConstructorWithToBuilderBuilder<T> {
+ private @java.lang.SuppressWarnings("all") String mOne;
+ private @java.lang.SuppressWarnings("all") T bar;
+ @java.lang.SuppressWarnings("all") ConstructorWithToBuilderBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") ConstructorWithToBuilderBuilder<T> mOne(final String mOne) {
+ this.mOne = mOne;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") ConstructorWithToBuilderBuilder<T> bar(final T bar) {
+ this.bar = bar;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") ConstructorWithToBuilder<T> build() {
+ return new ConstructorWithToBuilder<T>(mOne, bar);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((("ConstructorWithToBuilder.ConstructorWithToBuilderBuilder(mOne=" + this.mOne) + ", bar=") + this.bar) + ")");
+ }
+ }
+ private String mOne;
+ private String mTwo;
+ private T foo;
+ private @lombok.Singular List<T> bars;
+ public @Builder(toBuilder = true) ConstructorWithToBuilder(String mOne, @Builder.ObtainVia(field = "foo") T bar) {
+ super();
+ }
+ public static @java.lang.SuppressWarnings("all") <T>ConstructorWithToBuilderBuilder<T> builder() {
+ return new ConstructorWithToBuilderBuilder<T>();
+ }
+ public @java.lang.SuppressWarnings("all") ConstructorWithToBuilderBuilder<T> toBuilder() {
+ return new ConstructorWithToBuilderBuilder<T>().mOne(this.mOne).bar(this.foo);
+ }
+}
+@lombok.experimental.Accessors(prefix = "m") class StaticWithToBuilder<T, K> {
+ public static @java.lang.SuppressWarnings("all") class StaticWithToBuilderBuilder<Z> {
+ private @java.lang.SuppressWarnings("all") String mOne;
+ private @java.lang.SuppressWarnings("all") Z bar;
+ @java.lang.SuppressWarnings("all") StaticWithToBuilderBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") StaticWithToBuilderBuilder<Z> mOne(final String mOne) {
+ this.mOne = mOne;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") StaticWithToBuilderBuilder<Z> bar(final Z bar) {
+ this.bar = bar;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") StaticWithToBuilder<Z, String> build() {
+ return StaticWithToBuilder.<Z>test(mOne, bar);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (((("StaticWithToBuilder.StaticWithToBuilderBuilder(mOne=" + this.mOne) + ", bar=") + this.bar) + ")");
+ }
+ }
+ private String mOne;
+ private String mTwo;
+ private T foo;
+ private K bar;
+ private @lombok.Singular List<T> bars;
+ StaticWithToBuilder() {
+ super();
+ }
+ public static @Builder(toBuilder = true) <Z>StaticWithToBuilder<Z, String> test(String mOne, @Builder.ObtainVia(field = "foo") Z bar) {
+ return new StaticWithToBuilder<Z, String>();
+ }
+ public static @java.lang.SuppressWarnings("all") <Z>StaticWithToBuilderBuilder<Z> builder() {
+ return new StaticWithToBuilderBuilder<Z>();
+ }
+ public @java.lang.SuppressWarnings("all") StaticWithToBuilderBuilder<T> toBuilder() {
+ return new StaticWithToBuilderBuilder<T>().mOne(this.mOne).bar(this.foo);
+ }
+}
diff --git a/test/transform/resource/after-ecj/BuilderWithTolerate.java b/test/transform/resource/after-ecj/BuilderWithTolerate.java
new file mode 100644
index 00000000..b64fd49a
--- /dev/null
+++ b/test/transform/resource/after-ecj/BuilderWithTolerate.java
@@ -0,0 +1,34 @@
+import lombok.Builder;
+import lombok.experimental.Tolerate;
+public @Builder class BuilderWithTolerate {
+ public static class BuilderWithTolerateBuilder {
+ private @java.lang.SuppressWarnings("all") int value;
+ public @Tolerate BuilderWithTolerateBuilder value(String s) {
+ return this.value(Integer.parseInt(s));
+ }
+ @java.lang.SuppressWarnings("all") BuilderWithTolerateBuilder() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithTolerateBuilder value(final int value) {
+ this.value = value;
+ return this;
+ }
+ public @java.lang.SuppressWarnings("all") BuilderWithTolerate build() {
+ return new BuilderWithTolerate(value);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (("BuilderWithTolerate.BuilderWithTolerateBuilder(value=" + this.value) + ")");
+ }
+ }
+ private final int value;
+ public static void main(String[] args) {
+ BuilderWithTolerate.builder().value("42").build();
+ }
+ @java.lang.SuppressWarnings("all") BuilderWithTolerate(final int value) {
+ super();
+ this.value = value;
+ }
+ public static @java.lang.SuppressWarnings("all") BuilderWithTolerateBuilder builder() {
+ return new BuilderWithTolerateBuilder();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/ConflictingStaticConstructorNames.java b/test/transform/resource/after-ecj/ConflictingStaticConstructorNames.java
index f8aff69c..0d234d36 100644
--- a/test/transform/resource/after-ecj/ConflictingStaticConstructorNames.java
+++ b/test/transform/resource/after-ecj/ConflictingStaticConstructorNames.java
@@ -4,7 +4,7 @@
return true;
if ((! (o instanceof ConflictingStaticConstructorNames)))
return false;
- final @java.lang.SuppressWarnings("all") ConflictingStaticConstructorNames other = (ConflictingStaticConstructorNames) o;
+ final ConflictingStaticConstructorNames other = (ConflictingStaticConstructorNames) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
return true;
diff --git a/test/transform/resource/after-ecj/Constructors.java b/test/transform/resource/after-ecj/Constructors.java
index a4597ce6..8f8ee129 100644
--- a/test/transform/resource/after-ecj/Constructors.java
+++ b/test/transform/resource/after-ecj/Constructors.java
@@ -1,7 +1,7 @@
@lombok.RequiredArgsConstructor class RequiredArgsConstructor1 {
final int x;
String name;
- public @java.beans.ConstructorProperties({"x"}) @java.lang.SuppressWarnings("all") RequiredArgsConstructor1(final int x) {
+ public @java.lang.SuppressWarnings("all") RequiredArgsConstructor1(final int x) {
super();
this.x = x;
}
@@ -9,7 +9,7 @@
@lombok.RequiredArgsConstructor(access = lombok.AccessLevel.PROTECTED) class RequiredArgsConstructorAccess {
final int x;
String name;
- protected @java.beans.ConstructorProperties({"x"}) @java.lang.SuppressWarnings("all") RequiredArgsConstructorAccess(final int x) {
+ protected @java.lang.SuppressWarnings("all") RequiredArgsConstructorAccess(final int x) {
super();
this.x = x;
}
@@ -28,7 +28,7 @@
@lombok.RequiredArgsConstructor() class RequiredArgsConstructorWithAnnotations {
final int x;
String name;
- public @Deprecated @java.beans.ConstructorProperties({"x"}) @java.lang.SuppressWarnings("all") RequiredArgsConstructorWithAnnotations(final int x) {
+ public @Deprecated @java.lang.SuppressWarnings("all") RequiredArgsConstructorWithAnnotations(final int x) {
super();
this.x = x;
}
@@ -36,7 +36,7 @@
@lombok.AllArgsConstructor class AllArgsConstructor1 {
final int x;
String name;
- public @java.beans.ConstructorProperties({"x", "name"}) @java.lang.SuppressWarnings("all") AllArgsConstructor1(final int x, final String name) {
+ public @java.lang.SuppressWarnings("all") AllArgsConstructor1(final int x, final String name) {
super();
this.x = x;
this.name = name;
@@ -77,4 +77,22 @@
super();
this.x = x;
}
+}
+@lombok.NoArgsConstructor(force = true) class NoArgsConstructor2 {
+ final int x;
+ final double y;
+ final char c;
+ final boolean b;
+ final float f;
+ final String s;
+ byte z;
+ public @java.lang.SuppressWarnings("all") NoArgsConstructor2() {
+ super();
+ this.x = 0;
+ this.y = 0D;
+ this.c = '\0';
+ this.b = false;
+ this.f = 0F;
+ this.s = null;
+ }
} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/ConstructorsConfiguration.java b/test/transform/resource/after-ecj/ConstructorsConfiguration.java
index b55d3e03..2e88a59f 100644
--- a/test/transform/resource/after-ecj/ConstructorsConfiguration.java
+++ b/test/transform/resource/after-ecj/ConstructorsConfiguration.java
@@ -5,10 +5,3 @@
this.x = x;
}
}
-@lombok.AllArgsConstructor(suppressConstructorProperties = false) class ConstructorsConfigurationExplicit {
- int x;
- public @java.beans.ConstructorProperties({"x"}) @java.lang.SuppressWarnings("all") ConstructorsConfigurationExplicit(final int x) {
- super();
- this.x = x;
- }
-}
diff --git a/test/transform/resource/after-ecj/ConstructorsWithAccessors.java b/test/transform/resource/after-ecj/ConstructorsWithAccessors.java
index 0df8fbe1..301e6132 100644
--- a/test/transform/resource/after-ecj/ConstructorsWithAccessors.java
+++ b/test/transform/resource/after-ecj/ConstructorsWithAccessors.java
@@ -3,7 +3,7 @@
int pUpper;
int _huh;
int __huh2;
- public @java.beans.ConstructorProperties({"plower", "upper", "huh", "_huh2"}) @java.lang.SuppressWarnings("all") ConstructorsWithAccessors(final int plower, final int upper, final int huh, final int _huh2) {
+ public @java.lang.SuppressWarnings("all") ConstructorsWithAccessors(final int plower, final int upper, final int huh, final int _huh2) {
super();
this.plower = plower;
this.pUpper = upper;
@@ -11,3 +11,32 @@
this.__huh2 = _huh2;
}
}
+@lombok.AllArgsConstructor @lombok.experimental.Accessors(prefix = {"p", "_"}) class ConstructorsWithAccessorsNonNull {
+ @lombok.NonNull Integer plower;
+ @lombok.NonNull Integer pUpper;
+ @lombok.NonNull Integer _huh;
+ final @lombok.NonNull Integer __huh2;
+ public @java.lang.SuppressWarnings("all") ConstructorsWithAccessorsNonNull(final @lombok.NonNull Integer plower, final @lombok.NonNull Integer upper, final @lombok.NonNull Integer huh, final @lombok.NonNull Integer _huh2) {
+ super();
+ if ((plower == null))
+ {
+ throw new java.lang.NullPointerException("plower");
+ }
+ if ((upper == null))
+ {
+ throw new java.lang.NullPointerException("upper");
+ }
+ if ((huh == null))
+ {
+ throw new java.lang.NullPointerException("huh");
+ }
+ if ((_huh2 == null))
+ {
+ throw new java.lang.NullPointerException("_huh2");
+ }
+ this.plower = plower;
+ this.pUpper = upper;
+ this._huh = huh;
+ this.__huh2 = _huh2;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/DataConfiguration.java b/test/transform/resource/after-ecj/DataConfiguration.java
index f2733a88..1e7adfbf 100644
--- a/test/transform/resource/after-ecj/DataConfiguration.java
+++ b/test/transform/resource/after-ecj/DataConfiguration.java
@@ -8,10 +8,10 @@
return true;
if ((! (o instanceof DataConfiguration)))
return false;
- final @java.lang.SuppressWarnings("all") DataConfiguration other = (DataConfiguration) o;
+ final DataConfiguration other = (DataConfiguration) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
- if ((this.getX() != other.getX()))
+ if ((this.x != other.x))
return false;
return true;
}
@@ -21,11 +21,11 @@
public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
final int PRIME = 59;
int result = 1;
- result = ((result * PRIME) + this.getX());
+ result = ((result * PRIME) + this.x);
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
- return (("DataConfiguration(x=" + this.getX()) + ")");
+ return (("DataConfiguration(x=" + this.x) + ")");
}
public @java.lang.SuppressWarnings("all") DataConfiguration(final int x) {
super();
diff --git a/test/transform/resource/after-ecj/DataExtended.java b/test/transform/resource/after-ecj/DataExtended.java
index c2652ba4..3250421f 100644
--- a/test/transform/resource/after-ecj/DataExtended.java
+++ b/test/transform/resource/after-ecj/DataExtended.java
@@ -11,7 +11,7 @@
return true;
if ((! (o instanceof DataExtended)))
return false;
- final @java.lang.SuppressWarnings("all") DataExtended other = (DataExtended) o;
+ final DataExtended other = (DataExtended) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getX() != other.getX()))
diff --git a/test/transform/resource/after-ecj/DataIgnore.java b/test/transform/resource/after-ecj/DataIgnore.java
index d077a5db..d3ac8aa3 100644
--- a/test/transform/resource/after-ecj/DataIgnore.java
+++ b/test/transform/resource/after-ecj/DataIgnore.java
@@ -9,7 +9,7 @@
return true;
if ((! (o instanceof DataIgnore)))
return false;
- final @java.lang.SuppressWarnings("all") DataIgnore other = (DataIgnore) o;
+ final DataIgnore other = (DataIgnore) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getX() != other.getX()))
@@ -28,7 +28,7 @@
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (("DataIgnore(x=" + this.getX()) + ")");
}
- public @java.beans.ConstructorProperties({"x"}) @java.lang.SuppressWarnings("all") DataIgnore(final int x) {
+ public @java.lang.SuppressWarnings("all") DataIgnore(final int x) {
super();
this.x = x;
}
diff --git a/test/transform/resource/after-ecj/DataOnLocalClass.java b/test/transform/resource/after-ecj/DataOnLocalClass.java
index 3f4832ff..341df49b 100644
--- a/test/transform/resource/after-ecj/DataOnLocalClass.java
+++ b/test/transform/resource/after-ecj/DataOnLocalClass.java
@@ -21,7 +21,7 @@ class DataOnLocalClass1 {
return true;
if ((! (o instanceof Local)))
return false;
- final @java.lang.SuppressWarnings("all") Local other = (Local) o;
+ final Local other = (Local) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getX() != other.getX()))
@@ -40,7 +40,7 @@ class DataOnLocalClass1 {
int result = 1;
result = ((result * PRIME) + this.getX());
final java.lang.Object $name = this.getName();
- result = ((result * PRIME) + (($name == null) ? 0 : $name.hashCode()));
+ result = ((result * PRIME) + (($name == null) ? 43 : $name.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
@@ -73,7 +73,7 @@ class DataOnLocalClass2 {
return true;
if ((! (o instanceof Local.InnerLocal)))
return false;
- final @java.lang.SuppressWarnings("all") InnerLocal other = (InnerLocal) o;
+ final Local.InnerLocal other = (Local.InnerLocal) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
final java.lang.Object this$name = this.getName();
@@ -89,7 +89,7 @@ class DataOnLocalClass2 {
final int PRIME = 59;
int result = 1;
final java.lang.Object $name = this.getName();
- result = ((result * PRIME) + (($name == null) ? 0 : $name.hashCode()));
+ result = ((result * PRIME) + (($name == null) ? 43 : $name.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
@@ -113,7 +113,7 @@ class DataOnLocalClass2 {
return true;
if ((! (o instanceof Local)))
return false;
- final @java.lang.SuppressWarnings("all") Local other = (Local) o;
+ final Local other = (Local) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getX() != other.getX()))
diff --git a/test/transform/resource/after-ecj/DataPlain.java b/test/transform/resource/after-ecj/DataPlain.java
index 858f46dd..eaeef509 100644
--- a/test/transform/resource/after-ecj/DataPlain.java
+++ b/test/transform/resource/after-ecj/DataPlain.java
@@ -16,7 +16,7 @@ import lombok.Data;
return true;
if ((! (o instanceof Data1)))
return false;
- final @java.lang.SuppressWarnings("all") Data1 other = (Data1) o;
+ final Data1 other = (Data1) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getX() != other.getX()))
@@ -35,13 +35,13 @@ import lombok.Data;
int result = 1;
result = ((result * PRIME) + this.getX());
final java.lang.Object $name = this.getName();
- result = ((result * PRIME) + (($name == null) ? 0 : $name.hashCode()));
+ result = ((result * PRIME) + (($name == null) ? 43 : $name.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (((("Data1(x=" + this.getX()) + ", name=") + this.getName()) + ")");
}
- public @java.beans.ConstructorProperties({"x"}) @java.lang.SuppressWarnings("all") Data1(final int x) {
+ public @java.lang.SuppressWarnings("all") Data1(final int x) {
super();
this.x = x;
}
@@ -63,7 +63,7 @@ import lombok.Data;
return true;
if ((! (o instanceof Data2)))
return false;
- final @java.lang.SuppressWarnings("all") Data2 other = (Data2) o;
+ final Data2 other = (Data2) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getX() != other.getX()))
@@ -82,13 +82,13 @@ import lombok.Data;
int result = 1;
result = ((result * PRIME) + this.getX());
final java.lang.Object $name = this.getName();
- result = ((result * PRIME) + (($name == null) ? 0 : $name.hashCode()));
+ result = ((result * PRIME) + (($name == null) ? 43 : $name.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (((("Data2(x=" + this.getX()) + ", name=") + this.getName()) + ")");
}
- public @java.beans.ConstructorProperties({"x"}) @java.lang.SuppressWarnings("all") Data2(final int x) {
+ public @java.lang.SuppressWarnings("all") Data2(final int x) {
super();
this.x = x;
}
@@ -110,7 +110,7 @@ final @Data class Data3 {
return true;
if ((! (o instanceof Data3)))
return false;
- final @java.lang.SuppressWarnings("all") Data3 other = (Data3) o;
+ final Data3 other = (Data3) o;
if ((this.getX() != other.getX()))
return false;
final java.lang.Object this$name = this.getName();
@@ -124,13 +124,13 @@ final @Data class Data3 {
int result = 1;
result = ((result * PRIME) + this.getX());
final java.lang.Object $name = this.getName();
- result = ((result * PRIME) + (($name == null) ? 0 : $name.hashCode()));
+ result = ((result * PRIME) + (($name == null) ? 43 : $name.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (((("Data3(x=" + this.getX()) + ", name=") + this.getName()) + ")");
}
- public @java.beans.ConstructorProperties({"x"}) @java.lang.SuppressWarnings("all") Data3(final int x) {
+ public @java.lang.SuppressWarnings("all") Data3(final int x) {
super();
this.x = x;
}
@@ -154,7 +154,7 @@ final @Data @lombok.EqualsAndHashCode(callSuper = true) class Data4 extends java
return true;
if ((! (o instanceof Data4)))
return false;
- final @java.lang.SuppressWarnings("all") Data4 other = (Data4) o;
+ final Data4 other = (Data4) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((! super.equals(o)))
@@ -168,8 +168,7 @@ final @Data @lombok.EqualsAndHashCode(callSuper = true) class Data4 extends java
}
public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
final int PRIME = 59;
- int result = 1;
- result = ((result * PRIME) + super.hashCode());
+ int result = super.hashCode();
result = ((result * PRIME) + this.getX());
return result;
}
@@ -180,7 +179,7 @@ final @Data @lombok.EqualsAndHashCode(callSuper = true) class Data4 extends java
return true;
if ((! (o instanceof Data5)))
return false;
- final @java.lang.SuppressWarnings("all") Data5 other = (Data5) o;
+ final Data5 other = (Data5) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
return true;
diff --git a/test/transform/resource/after-ecj/DataWithGetter.java b/test/transform/resource/after-ecj/DataWithGetter.java
index ee74ed4e..fa291eca 100644
--- a/test/transform/resource/after-ecj/DataWithGetter.java
+++ b/test/transform/resource/after-ecj/DataWithGetter.java
@@ -13,7 +13,7 @@
return true;
if ((! (o instanceof DataWithGetter)))
return false;
- final @java.lang.SuppressWarnings("all") DataWithGetter other = (DataWithGetter) o;
+ final DataWithGetter other = (DataWithGetter) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getX() != other.getX()))
@@ -35,13 +35,13 @@
result = ((result * PRIME) + this.getX());
result = ((result * PRIME) + this.getY());
final java.lang.Object $z = this.getZ();
- result = ((result * PRIME) + (($z == null) ? 0 : $z.hashCode()));
+ result = ((result * PRIME) + (($z == null) ? 43 : $z.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (((((("DataWithGetter(x=" + this.getX()) + ", y=") + this.getY()) + ", z=") + this.getZ()) + ")");
}
- public @java.beans.ConstructorProperties({"z"}) @java.lang.SuppressWarnings("all") DataWithGetter(final String z) {
+ public @java.lang.SuppressWarnings("all") DataWithGetter(final String z) {
super();
this.z = z;
}
diff --git a/test/transform/resource/after-ecj/DataWithGetterNone.java b/test/transform/resource/after-ecj/DataWithGetterNone.java
index 056e071d..4545dc46 100644
--- a/test/transform/resource/after-ecj/DataWithGetterNone.java
+++ b/test/transform/resource/after-ecj/DataWithGetterNone.java
@@ -13,7 +13,7 @@
return true;
if ((! (o instanceof DataWithGetterNone)))
return false;
- final @java.lang.SuppressWarnings("all") DataWithGetterNone other = (DataWithGetterNone) o;
+ final DataWithGetterNone other = (DataWithGetterNone) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.x != other.x))
@@ -35,13 +35,13 @@
result = ((result * PRIME) + this.x);
result = ((result * PRIME) + this.y);
final java.lang.Object $z = this.z;
- result = ((result * PRIME) + (($z == null) ? 0 : $z.hashCode()));
+ result = ((result * PRIME) + (($z == null) ? 43 : $z.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (((((("DataWithGetterNone(x=" + this.x) + ", y=") + this.y) + ", z=") + this.z) + ")");
}
- public @java.beans.ConstructorProperties({"z"}) @java.lang.SuppressWarnings("all") DataWithGetterNone(final String z) {
+ public @java.lang.SuppressWarnings("all") DataWithGetterNone(final String z) {
super();
this.z = z;
}
diff --git a/test/transform/resource/after-ecj/DelegateWithVarargs.java b/test/transform/resource/after-ecj/DelegateWithVarargs.java
new file mode 100644
index 00000000..71a0ca5a
--- /dev/null
+++ b/test/transform/resource/after-ecj/DelegateWithVarargs.java
@@ -0,0 +1,25 @@
+import lombok.experimental.Delegate;
+class DelegateWithVarargs {
+ private interface Bar {
+ void justOneParameter(int... varargs);
+ void multipleParameters(String first, int... varargs);
+ void array(int[] array);
+ void arrayVarargs(int[]... arrayVarargs);
+ }
+ private @Delegate Bar bar;
+ DelegateWithVarargs() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") void array(final int[] array) {
+ this.bar.array(array);
+ }
+ public @java.lang.SuppressWarnings("all") void arrayVarargs(final int[]... arrayVarargs) {
+ this.bar.arrayVarargs(arrayVarargs);
+ }
+ public @java.lang.SuppressWarnings("all") void justOneParameter(final int... varargs) {
+ this.bar.justOneParameter(varargs);
+ }
+ public @java.lang.SuppressWarnings("all") void multipleParameters(final java.lang.String first, final int... varargs) {
+ this.bar.multipleParameters(first, varargs);
+ }
+}
diff --git a/test/transform/resource/after-ecj/EncodingUsAscii.java b/test/transform/resource/after-ecj/EncodingUsAscii.java
new file mode 100644
index 00000000..b66feb0c
--- /dev/null
+++ b/test/transform/resource/after-ecj/EncodingUsAscii.java
@@ -0,0 +1 @@
+//ignore: This test serves to check what happens with 'weird' characters when you use delombok. It's just not relevant for ecj.
diff --git a/test/transform/resource/after-ecj/EncodingUtf8.java b/test/transform/resource/after-ecj/EncodingUtf8.java
new file mode 100644
index 00000000..b66feb0c
--- /dev/null
+++ b/test/transform/resource/after-ecj/EncodingUtf8.java
@@ -0,0 +1 @@
+//ignore: This test serves to check what happens with 'weird' characters when you use delombok. It's just not relevant for ecj.
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCode.java b/test/transform/resource/after-ecj/EqualsAndHashCode.java
index 05cbf2a3..8baa61f2 100644
--- a/test/transform/resource/after-ecj/EqualsAndHashCode.java
+++ b/test/transform/resource/after-ecj/EqualsAndHashCode.java
@@ -12,7 +12,7 @@
return true;
if ((! (o instanceof EqualsAndHashCode)))
return false;
- final @java.lang.SuppressWarnings("all") EqualsAndHashCode other = (EqualsAndHashCode) o;
+ final EqualsAndHashCode other = (EqualsAndHashCode) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.x != other.x))
@@ -41,9 +41,9 @@
result = ((result * PRIME) + java.util.Arrays.hashCode(this.y));
result = ((result * PRIME) + java.util.Arrays.deepHashCode(this.z));
final java.lang.Object $a = this.a;
- result = ((result * PRIME) + (($a == null) ? 0 : $a.hashCode()));
+ result = ((result * PRIME) + (($a == null) ? 43 : $a.hashCode()));
final java.lang.Object $b = this.b;
- result = ((result * PRIME) + (($b == null) ? 0 : $b.hashCode()));
+ result = ((result * PRIME) + (($b == null) ? 43 : $b.hashCode()));
return result;
}
}
@@ -61,7 +61,7 @@ final @lombok.EqualsAndHashCode class EqualsAndHashCode2 {
return true;
if ((! (o instanceof EqualsAndHashCode2)))
return false;
- final @java.lang.SuppressWarnings("all") EqualsAndHashCode2 other = (EqualsAndHashCode2) o;
+ final EqualsAndHashCode2 other = (EqualsAndHashCode2) o;
if ((this.x != other.x))
return false;
if ((this.y != other.y))
@@ -96,7 +96,7 @@ final @lombok.EqualsAndHashCode(callSuper = false) class EqualsAndHashCode3 exte
return true;
if ((! (o instanceof EqualsAndHashCode3)))
return false;
- final @java.lang.SuppressWarnings("all") EqualsAndHashCode3 other = (EqualsAndHashCode3) o;
+ final EqualsAndHashCode3 other = (EqualsAndHashCode3) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
return true;
@@ -118,7 +118,7 @@ final @lombok.EqualsAndHashCode(callSuper = false) class EqualsAndHashCode3 exte
return true;
if ((! (o instanceof EqualsAndHashCode4)))
return false;
- final @java.lang.SuppressWarnings("all") EqualsAndHashCode4 other = (EqualsAndHashCode4) o;
+ final EqualsAndHashCode4 other = (EqualsAndHashCode4) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((! super.equals(o)))
@@ -129,9 +129,7 @@ final @lombok.EqualsAndHashCode(callSuper = false) class EqualsAndHashCode3 exte
return (other instanceof EqualsAndHashCode4);
}
public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
- final int PRIME = 59;
- int result = 1;
- result = ((result * PRIME) + super.hashCode());
+ int result = super.hashCode();
return result;
}
}
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCodeConfigKeys1.java b/test/transform/resource/after-ecj/EqualsAndHashCodeConfigKeys1.java
new file mode 100644
index 00000000..1561962c
--- /dev/null
+++ b/test/transform/resource/after-ecj/EqualsAndHashCodeConfigKeys1.java
@@ -0,0 +1,49 @@
+@lombok.EqualsAndHashCode class EqualsAndHashCodeConfigKeys1Parent {
+ EqualsAndHashCodeConfigKeys1Parent() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeConfigKeys1Parent)))
+ return false;
+ final EqualsAndHashCodeConfigKeys1Parent other = (EqualsAndHashCodeConfigKeys1Parent) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof EqualsAndHashCodeConfigKeys1Parent);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ int result = 1;
+ return result;
+ }
+}
+@lombok.EqualsAndHashCode class EqualsAndHashCodeConfigKeys1 extends EqualsAndHashCodeConfigKeys1Parent {
+ int x;
+ EqualsAndHashCodeConfigKeys1() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeConfigKeys1)))
+ return false;
+ final EqualsAndHashCodeConfigKeys1 other = (EqualsAndHashCodeConfigKeys1) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ if ((this.x != other.x))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof EqualsAndHashCodeConfigKeys1);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = ((result * PRIME) + this.x);
+ return result;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCodeConfigKeys2.java b/test/transform/resource/after-ecj/EqualsAndHashCodeConfigKeys2.java
new file mode 100644
index 00000000..0245eae0
--- /dev/null
+++ b/test/transform/resource/after-ecj/EqualsAndHashCodeConfigKeys2.java
@@ -0,0 +1,73 @@
+@lombok.EqualsAndHashCode class EqualsAndHashCodeConfigKeys2Object extends Object {
+ EqualsAndHashCodeConfigKeys2Object() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeConfigKeys2Object)))
+ return false;
+ final EqualsAndHashCodeConfigKeys2Object other = (EqualsAndHashCodeConfigKeys2Object) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof EqualsAndHashCodeConfigKeys2Object);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ int result = 1;
+ return result;
+ }
+}
+@lombok.EqualsAndHashCode class EqualsAndHashCodeConfigKeys2Parent {
+ EqualsAndHashCodeConfigKeys2Parent() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeConfigKeys2Parent)))
+ return false;
+ final EqualsAndHashCodeConfigKeys2Parent other = (EqualsAndHashCodeConfigKeys2Parent) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof EqualsAndHashCodeConfigKeys2Parent);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ int result = 1;
+ return result;
+ }
+}
+@lombok.EqualsAndHashCode class EqualsAndHashCodeConfigKeys2 extends EqualsAndHashCodeConfigKeys2Parent {
+ int x;
+ EqualsAndHashCodeConfigKeys2() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeConfigKeys2)))
+ return false;
+ final EqualsAndHashCodeConfigKeys2 other = (EqualsAndHashCodeConfigKeys2) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ if ((! super.equals(o)))
+ return false;
+ if ((this.x != other.x))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof EqualsAndHashCodeConfigKeys2);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = super.hashCode();
+ result = ((result * PRIME) + this.x);
+ return result;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCodeNestedShadow.java b/test/transform/resource/after-ecj/EqualsAndHashCodeNestedShadow.java
new file mode 100644
index 00000000..e08f523d
--- /dev/null
+++ b/test/transform/resource/after-ecj/EqualsAndHashCodeNestedShadow.java
@@ -0,0 +1,58 @@
+interface EqualsAndHashCodeNestedShadow {
+ interface Foo {
+ }
+ class Bar {
+ public static @lombok.EqualsAndHashCode(callSuper = false) class Foo extends Bar implements EqualsAndHashCodeNestedShadow.Foo {
+ public Foo() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeNestedShadow.Bar.Foo)))
+ return false;
+ final EqualsAndHashCodeNestedShadow.Bar.Foo other = (EqualsAndHashCodeNestedShadow.Bar.Foo) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof EqualsAndHashCodeNestedShadow.Bar.Foo);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ int result = 1;
+ return result;
+ }
+ }
+ Bar() {
+ super();
+ }
+ }
+ class Baz {
+ public static @lombok.EqualsAndHashCode(callSuper = false) class Foo<T> extends Bar implements EqualsAndHashCodeNestedShadow.Foo {
+ public Foo() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeNestedShadow.Baz.Foo)))
+ return false;
+ final EqualsAndHashCodeNestedShadow.Baz.Foo<?> other = (EqualsAndHashCodeNestedShadow.Baz.Foo<?>) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof EqualsAndHashCodeNestedShadow.Baz.Foo);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ int result = 1;
+ return result;
+ }
+ }
+ Baz() {
+ super();
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCodeOfAndExclude.java b/test/transform/resource/after-ecj/EqualsAndHashCodeOfAndExclude.java
new file mode 100644
index 00000000..8e93963a
--- /dev/null
+++ b/test/transform/resource/after-ecj/EqualsAndHashCodeOfAndExclude.java
@@ -0,0 +1,46 @@
+final @lombok.EqualsAndHashCode(of = {"x"}) class EqualsAndHashCodeOf {
+ int x;
+ int y;
+ EqualsAndHashCodeOf() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeOf)))
+ return false;
+ final EqualsAndHashCodeOf other = (EqualsAndHashCodeOf) o;
+ if ((this.x != other.x))
+ return false;
+ return true;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = ((result * PRIME) + this.x);
+ return result;
+ }
+}
+final @lombok.EqualsAndHashCode(exclude = {"y"}) class EqualsAndHashCodeExclude {
+ int x;
+ int y;
+ EqualsAndHashCodeExclude() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeExclude)))
+ return false;
+ final EqualsAndHashCodeExclude other = (EqualsAndHashCodeExclude) o;
+ if ((this.x != other.x))
+ return false;
+ return true;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = ((result * PRIME) + this.x);
+ return result;
+ }
+}
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCodeWithExistingMethods.java b/test/transform/resource/after-ecj/EqualsAndHashCodeWithExistingMethods.java
index feda33ce..cc0d6544 100644
--- a/test/transform/resource/after-ecj/EqualsAndHashCodeWithExistingMethods.java
+++ b/test/transform/resource/after-ecj/EqualsAndHashCodeWithExistingMethods.java
@@ -29,7 +29,7 @@ final @lombok.EqualsAndHashCode(callSuper = true) class EqualsAndHashCodeWithExi
return true;
if ((! (o instanceof EqualsAndHashCodeWithExistingMethods3)))
return false;
- final @java.lang.SuppressWarnings("all") EqualsAndHashCodeWithExistingMethods3 other = (EqualsAndHashCodeWithExistingMethods3) o;
+ final EqualsAndHashCodeWithExistingMethods3 other = (EqualsAndHashCodeWithExistingMethods3) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((! super.equals(o)))
@@ -40,8 +40,7 @@ final @lombok.EqualsAndHashCode(callSuper = true) class EqualsAndHashCodeWithExi
}
public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
final int PRIME = 59;
- int result = 1;
- result = ((result * PRIME) + super.hashCode());
+ int result = super.hashCode();
result = ((result * PRIME) + this.x);
return result;
}
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCodeWithGenericsOnInners.java b/test/transform/resource/after-ecj/EqualsAndHashCodeWithGenericsOnInners.java
new file mode 100644
index 00000000..164d0f15
--- /dev/null
+++ b/test/transform/resource/after-ecj/EqualsAndHashCodeWithGenericsOnInners.java
@@ -0,0 +1,32 @@
+public class EqualsAndHashCodeWithGenericsOnInners<A> {
+ @lombok.EqualsAndHashCode class Inner<B> {
+ int x;
+ Inner() {
+ super();
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof EqualsAndHashCodeWithGenericsOnInners.Inner)))
+ return false;
+ final EqualsAndHashCodeWithGenericsOnInners<?>.Inner<?> other = (EqualsAndHashCodeWithGenericsOnInners<?>.Inner<?>) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ if ((this.x != other.x))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof EqualsAndHashCodeWithGenericsOnInners.Inner);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = ((result * PRIME) + this.x);
+ return result;
+ }
+ }
+ public EqualsAndHashCodeWithGenericsOnInners() {
+ super();
+ }
+}
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCodeWithOnParam.java b/test/transform/resource/after-ecj/EqualsAndHashCodeWithOnParam.java
index fc226f06..d8af4c77 100644
--- a/test/transform/resource/after-ecj/EqualsAndHashCodeWithOnParam.java
+++ b/test/transform/resource/after-ecj/EqualsAndHashCodeWithOnParam.java
@@ -15,7 +15,7 @@
return true;
if ((! (o instanceof EqualsAndHashCodeWithOnParam)))
return false;
- final @java.lang.SuppressWarnings("all") EqualsAndHashCodeWithOnParam other = (EqualsAndHashCodeWithOnParam) o;
+ final EqualsAndHashCodeWithOnParam other = (EqualsAndHashCodeWithOnParam) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.x != other.x))
@@ -44,9 +44,9 @@
result = ((result * PRIME) + java.util.Arrays.hashCode(this.y));
result = ((result * PRIME) + java.util.Arrays.deepHashCode(this.z));
final java.lang.Object $a = this.a;
- result = ((result * PRIME) + (($a == null) ? 0 : $a.hashCode()));
+ result = ((result * PRIME) + (($a == null) ? 43 : $a.hashCode()));
final java.lang.Object $b = this.b;
- result = ((result * PRIME) + (($b == null) ? 0 : $b.hashCode()));
+ result = ((result * PRIME) + (($b == null) ? 43 : $b.hashCode()));
return result;
}
} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/EqualsAndHashCodeWithSomeExistingMethods.java b/test/transform/resource/after-ecj/EqualsAndHashCodeWithSomeExistingMethods.java
index ee846c64..781faccb 100644
--- a/test/transform/resource/after-ecj/EqualsAndHashCodeWithSomeExistingMethods.java
+++ b/test/transform/resource/after-ecj/EqualsAndHashCodeWithSomeExistingMethods.java
@@ -22,7 +22,7 @@ import static lombok.AccessLevel.NONE;
return true;
if ((! (o instanceof EqualsAndHashCodeWithSomeExistingMethods2)))
return false;
- final @java.lang.SuppressWarnings("all") EqualsAndHashCodeWithSomeExistingMethods2 other = (EqualsAndHashCodeWithSomeExistingMethods2) o;
+ final EqualsAndHashCodeWithSomeExistingMethods2 other = (EqualsAndHashCodeWithSomeExistingMethods2) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.x != other.x))
@@ -64,7 +64,7 @@ import static lombok.AccessLevel.NONE;
return true;
if ((! (o instanceof EqualsAndHashCodeWithNoExistingMethods)))
return false;
- final @java.lang.SuppressWarnings("all") EqualsAndHashCodeWithNoExistingMethods other = (EqualsAndHashCodeWithNoExistingMethods) o;
+ final EqualsAndHashCodeWithNoExistingMethods other = (EqualsAndHashCodeWithNoExistingMethods) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.x != other.x))
diff --git a/test/transform/resource/after-ecj/FieldDefaults.java b/test/transform/resource/after-ecj/FieldDefaults.java
index e76c1251..a6941b7b 100644
--- a/test/transform/resource/after-ecj/FieldDefaults.java
+++ b/test/transform/resource/after-ecj/FieldDefaults.java
@@ -1,14 +1,20 @@
@lombok.experimental.FieldDefaults(makeFinal = true) class FieldDefaults1 {
+ static int STATIC = 3;
final int x;
@lombok.experimental.NonFinal int y;
+ <clinit>() {
+ }
FieldDefaults1(int x) {
super();
this.x = x;
}
}
@lombok.experimental.FieldDefaults(level = lombok.AccessLevel.PRIVATE) class FieldDefaults2 {
+ static int STATIC = 3;
@lombok.experimental.PackagePrivate int x;
private int y;
+ <clinit>() {
+ }
FieldDefaults2() {
super();
}
diff --git a/test/transform/resource/after-ecj/FieldDefaultsViaConfig.java b/test/transform/resource/after-ecj/FieldDefaultsViaConfig.java
new file mode 100644
index 00000000..689d2601
--- /dev/null
+++ b/test/transform/resource/after-ecj/FieldDefaultsViaConfig.java
@@ -0,0 +1,15 @@
+class FieldDefaultsViaConfig1 {
+ private final int x;
+ private @lombok.experimental.NonFinal int y;
+ FieldDefaultsViaConfig1(int x) {
+ super();
+ this.x = x;
+ }
+}
+@lombok.experimental.FieldDefaults(level = lombok.AccessLevel.PROTECTED) class FieldDefaultsViaConfig2 {
+ final @lombok.experimental.PackagePrivate int x = 2;
+ protected final int y = 0;
+ FieldDefaultsViaConfig2() {
+ super();
+ }
+}
diff --git a/test/transform/resource/after-ecj/FieldDefaultsViaConfigAndRequiredArgsConstructor.java b/test/transform/resource/after-ecj/FieldDefaultsViaConfigAndRequiredArgsConstructor.java
new file mode 100644
index 00000000..02def41a
--- /dev/null
+++ b/test/transform/resource/after-ecj/FieldDefaultsViaConfigAndRequiredArgsConstructor.java
@@ -0,0 +1,7 @@
+@lombok.RequiredArgsConstructor class FieldDefaultsViaConfigAndRequiredArgsConstructor {
+ final int x;
+ public @java.lang.SuppressWarnings("all") FieldDefaultsViaConfigAndRequiredArgsConstructor(final int x) {
+ super();
+ this.x = x;
+ }
+}
diff --git a/test/transform/resource/after-ecj/GenerateSuppressFBWarnings.java b/test/transform/resource/after-ecj/GenerateSuppressFBWarnings.java
new file mode 100644
index 00000000..9cd996d5
--- /dev/null
+++ b/test/transform/resource/after-ecj/GenerateSuppressFBWarnings.java
@@ -0,0 +1,9 @@
+class GenerateSuppressFBWarnings {
+ @lombok.Getter int y;
+ GenerateSuppressFBWarnings() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") @edu.umd.cs.findbugs.annotations.SuppressFBWarnings(justification = "generated code") int getY() {
+ return this.y;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/GeneratedJavaxOff.java b/test/transform/resource/after-ecj/GeneratedJavaxOff.java
new file mode 100644
index 00000000..481e0ba9
--- /dev/null
+++ b/test/transform/resource/after-ecj/GeneratedJavaxOff.java
@@ -0,0 +1,9 @@
+class GeneratedJavaxOff {
+ @lombok.Getter int x;
+ GeneratedJavaxOff() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-ecj/GeneratedJavaxOnLombokOn.java b/test/transform/resource/after-ecj/GeneratedJavaxOnLombokOn.java
new file mode 100644
index 00000000..dc4537b9
--- /dev/null
+++ b/test/transform/resource/after-ecj/GeneratedJavaxOnLombokOn.java
@@ -0,0 +1,9 @@
+class GeneratedJavaxOnLombokOn {
+ @lombok.Getter int x;
+ GeneratedJavaxOnLombokOn() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") @lombok.Generated int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-ecj/GeneratedOff.java b/test/transform/resource/after-ecj/GeneratedOff.java
new file mode 100644
index 00000000..2644e42c
--- /dev/null
+++ b/test/transform/resource/after-ecj/GeneratedOff.java
@@ -0,0 +1,9 @@
+class GeneratedOff {
+ @lombok.Getter int x;
+ GeneratedOff() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-ecj/GeneratedOffJavaxOn.java b/test/transform/resource/after-ecj/GeneratedOffJavaxOn.java
new file mode 100644
index 00000000..c21b5379
--- /dev/null
+++ b/test/transform/resource/after-ecj/GeneratedOffJavaxOn.java
@@ -0,0 +1,9 @@
+class GeneratedOffJavaxOn {
+ @lombok.Getter int x;
+ GeneratedOffJavaxOn() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-ecj/GeneratedOffLombokOn.java b/test/transform/resource/after-ecj/GeneratedOffLombokOn.java
new file mode 100644
index 00000000..4d215593
--- /dev/null
+++ b/test/transform/resource/after-ecj/GeneratedOffLombokOn.java
@@ -0,0 +1,9 @@
+class GeneratedOffLombokOn {
+ @lombok.Getter int x;
+ GeneratedOffLombokOn() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") @lombok.Generated int getX() {
+ return this.x;
+ }
+}
diff --git a/test/transform/resource/after-ecj/GetterLazyBoolean.java b/test/transform/resource/after-ecj/GetterLazyBoolean.java
index cd5bac20..174389e8 100644
--- a/test/transform/resource/after-ecj/GetterLazyBoolean.java
+++ b/test/transform/resource/after-ecj/GetterLazyBoolean.java
@@ -46,7 +46,7 @@
return true;
if ((! (o instanceof GetterLazyBoolean)))
return false;
- final @java.lang.SuppressWarnings("all") GetterLazyBoolean other = (GetterLazyBoolean) o;
+ final GetterLazyBoolean other = (GetterLazyBoolean) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.isBooleanValue() != other.isBooleanValue()))
diff --git a/test/transform/resource/after-ecj/GetterLazyEahcToString.java b/test/transform/resource/after-ecj/GetterLazyEahcToString.java
index df26f912..e66a9c2e 100644
--- a/test/transform/resource/after-ecj/GetterLazyEahcToString.java
+++ b/test/transform/resource/after-ecj/GetterLazyEahcToString.java
@@ -29,7 +29,7 @@
return true;
if ((! (o instanceof GetterLazyEahcToString)))
return false;
- final @java.lang.SuppressWarnings("all") GetterLazyEahcToString other = (GetterLazyEahcToString) o;
+ final GetterLazyEahcToString other = (GetterLazyEahcToString) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
final java.lang.Object this$value = this.getValue();
@@ -49,9 +49,9 @@
final int PRIME = 59;
int result = 1;
final java.lang.Object $value = this.getValue();
- result = ((result * PRIME) + (($value == null) ? 0 : $value.hashCode()));
+ result = ((result * PRIME) + (($value == null) ? 43 : $value.hashCode()));
final java.lang.Object $value2 = this.value2;
- result = ((result * PRIME) + (($value2 == null) ? 0 : $value2.hashCode()));
+ result = ((result * PRIME) + (($value2 == null) ? 43 : $value2.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
diff --git a/test/transform/resource/after-ecj/GetterLazyTransient.java b/test/transform/resource/after-ecj/GetterLazyTransient.java
new file mode 100644
index 00000000..3ffd9b69
--- /dev/null
+++ b/test/transform/resource/after-ecj/GetterLazyTransient.java
@@ -0,0 +1,28 @@
+class GetterLazyTransient {
+ private final @lombok.Getter(lazy = true) java.util.concurrent.atomic.AtomicReference<java.lang.Object> nonTransientField = new java.util.concurrent.atomic.AtomicReference<java.lang.Object>();
+ private final transient @lombok.Getter(lazy = true) int transientField = 2;
+ private final transient @lombok.Getter int nonLazyTransientField = 3;
+ GetterLazyTransient() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") int getNonTransientField() {
+ java.lang.Object value = this.nonTransientField.get();
+ if ((value == null))
+ {
+ synchronized (this.nonTransientField)
+ {
+ value = this.nonTransientField.get();
+ if ((value == null))
+ {
+ final int actualValue = 1;
+ value = actualValue;
+ this.nonTransientField.set(value);
+ }
+ }
+ }
+ return (java.lang.Integer) value;
+ }
+ public @java.lang.SuppressWarnings("all") int getNonLazyTransientField() {
+ return this.nonLazyTransientField;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/GetterSetterJavadoc.java b/test/transform/resource/after-ecj/GetterSetterJavadoc.java
index 9f3bb9bd..4923fd02 100644
--- a/test/transform/resource/after-ecj/GetterSetterJavadoc.java
+++ b/test/transform/resource/after-ecj/GetterSetterJavadoc.java
@@ -11,7 +11,7 @@
return true;
if ((! (o instanceof GetterSetterJavadoc1)))
return false;
- final @java.lang.SuppressWarnings("all") GetterSetterJavadoc1 other = (GetterSetterJavadoc1) o;
+ final GetterSetterJavadoc1 other = (GetterSetterJavadoc1) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getFieldName() != other.getFieldName()))
@@ -57,4 +57,30 @@ class GetterSetterJavadoc3 {
public @java.lang.SuppressWarnings("all") void setFieldName(final int fieldName) {
this.fieldName = fieldName;
}
+}
+@lombok.experimental.Accessors(chain = true,fluent = true) class GetterSetterJavadoc4 {
+ private @lombok.Getter @lombok.Setter int fieldName;
+ GetterSetterJavadoc4() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") int fieldName() {
+ return this.fieldName;
+ }
+ public @java.lang.SuppressWarnings("all") GetterSetterJavadoc4 fieldName(final int fieldName) {
+ this.fieldName = fieldName;
+ return this;
+ }
+}
+@lombok.experimental.Accessors(chain = true,fluent = true) class GetterSetterJavadoc5 {
+ private @lombok.Getter @lombok.Setter int fieldName;
+ GetterSetterJavadoc5() {
+ super();
+ }
+ public @java.lang.SuppressWarnings("all") int fieldName() {
+ return this.fieldName;
+ }
+ public @java.lang.SuppressWarnings("all") GetterSetterJavadoc5 fieldName(final int fieldName) {
+ this.fieldName = fieldName;
+ return this;
+ }
} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/Helper.java b/test/transform/resource/after-ecj/Helper.java
new file mode 100644
index 00000000..44c2a171
--- /dev/null
+++ b/test/transform/resource/after-ecj/Helper.java
@@ -0,0 +1,30 @@
+import lombok.experimental.Helper;
+class HelperTest {
+ {
+ final int z = 5;
+ if (Boolean.TRUE)
+ {
+ @Helper class H1 {
+ H1() {
+ super();
+ }
+ void foo(int x) {
+ System.out.println(("Hello, " + (x + z)));
+ }
+ }
+ final H1 $H1 = new H1();
+ $H1.foo(10);
+ @Helper class H2 {
+ H2() {
+ super();
+ }
+ void bar() {
+ $H1.foo(12);
+ }
+ }
+ }
+ }
+ HelperTest() {
+ super();
+ }
+}
diff --git a/test/transform/resource/after-ecj/InnerClass.java b/test/transform/resource/after-ecj/InnerClass.java
new file mode 100644
index 00000000..32004225
--- /dev/null
+++ b/test/transform/resource/after-ecj/InnerClass.java
@@ -0,0 +1,56 @@
+class A {
+ @lombok.AllArgsConstructor class B {
+ String s;
+ public @java.lang.SuppressWarnings("all") B(final String s) {
+ super();
+ this.s = s;
+ }
+ }
+ A() {
+ super();
+ }
+}
+class C {
+ final @lombok.Value class D {
+ private final A a;
+ A.B test(String s) {
+ return a.new B(s) {
+ x(<no type> $anonymous0) {
+ super($anonymous0);
+ }
+};
+ }
+ public @java.lang.SuppressWarnings("all") A getA() {
+ return this.a;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof C.D)))
+ return false;
+ final C.D other = (C.D) o;
+ final java.lang.Object this$a = this.getA();
+ final java.lang.Object other$a = other.getA();
+ if (((this$a == null) ? (other$a != null) : (! this$a.equals(other$a))))
+ return false;
+ return true;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ final java.lang.Object $a = this.getA();
+ result = ((result * PRIME) + (($a == null) ? 43 : $a.hashCode()));
+ return result;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return (("C.D(a=" + this.getA()) + ")");
+ }
+ public @java.lang.SuppressWarnings("all") D(final A a) {
+ super();
+ this.a = a;
+ }
+ }
+ C() {
+ super();
+ }
+}
diff --git a/test/transform/resource/after-ecj/LoggerJBossLog.java b/test/transform/resource/after-ecj/LoggerJBossLog.java
new file mode 100644
index 00000000..e5c35708
--- /dev/null
+++ b/test/transform/resource/after-ecj/LoggerJBossLog.java
@@ -0,0 +1,38 @@
+import lombok.extern.jbosslog.JBossLog;
+@lombok.extern.jbosslog.JBossLog class LoggerJBossLog {
+ private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger(LoggerJBossLog.class);
+ <clinit>() {
+ }
+ LoggerJBossLog() {
+ super();
+ }
+}
+@JBossLog class LoggerJBossLogWithImport {
+ private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger(LoggerJBossLogWithImport.class);
+ <clinit>() {
+ }
+ LoggerJBossLogWithImport() {
+ super();
+ }
+}
+class LoggerJBossLogOuter {
+ static @lombok.extern.jbosslog.JBossLog class Inner {
+ private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger(Inner.class);
+ <clinit>() {
+ }
+ Inner() {
+ super();
+ }
+ }
+ LoggerJBossLogOuter() {
+ super();
+ }
+}
+@JBossLog(topic = "DifferentLogger") class LoggerJBossLogWithDifferentLoggerName {
+ private static final org.jboss.logging.Logger log = org.jboss.logging.Logger.getLogger("DifferentLogger");
+ <clinit>() {
+ }
+ LoggerJBossLogWithDifferentLoggerName() {
+ super();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/LoggerSlf4jOnNonType.java b/test/transform/resource/after-ecj/LoggerSlf4jOnNonType.java
deleted file mode 100644
index f0c2ee58..00000000
--- a/test/transform/resource/after-ecj/LoggerSlf4jOnNonType.java
+++ /dev/null
@@ -1,7 +0,0 @@
-class LoggerSlf4jOnNonType {
- LoggerSlf4jOnNonType() {
- super();
- }
- @lombok.extern.slf4j.Slf4j void foo() {
- }
-} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/NoArgsConstructorForce.java b/test/transform/resource/after-ecj/NoArgsConstructorForce.java
new file mode 100644
index 00000000..850aa8a5
--- /dev/null
+++ b/test/transform/resource/after-ecj/NoArgsConstructorForce.java
@@ -0,0 +1,12 @@
+import lombok.NoArgsConstructor;
+public @NoArgsConstructor(force = true) class NoArgsConstructorForce {
+ private final int[] i;
+ private final Object[] o;
+ private final java.util.List<?>[] fullQualifiedList;
+ public @java.lang.SuppressWarnings("all") NoArgsConstructorForce() {
+ super();
+ this.i = null;
+ this.o = null;
+ this.fullQualifiedList = null;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/NonNullOnParameterOfDefaultMethod.java b/test/transform/resource/after-ecj/NonNullOnParameterOfDefaultMethod.java
new file mode 100644
index 00000000..85e99702
--- /dev/null
+++ b/test/transform/resource/after-ecj/NonNullOnParameterOfDefaultMethod.java
@@ -0,0 +1,10 @@
+interface NonNullOnParameterOfDefaultMethod {
+ void test(@lombok.NonNull String arg);
+ default void test2(@lombok.NonNull String arg) {
+ if ((arg == null))
+ {
+ throw new java.lang.NullPointerException("arg");
+ }
+ System.out.println(arg);
+ }
+}
diff --git a/test/transform/resource/after-ecj/NonNullPlain.java b/test/transform/resource/after-ecj/NonNullPlain.java
index 6e937f6a..9edb576b 100644
--- a/test/transform/resource/after-ecj/NonNullPlain.java
+++ b/test/transform/resource/after-ecj/NonNullPlain.java
@@ -5,7 +5,7 @@ import java.lang.annotation.*;
@lombok.NonNull int i;
@lombok.NonNull String s;
@NotNull Object o;
- public @java.beans.ConstructorProperties({"i", "s"}) @java.lang.SuppressWarnings("all") NonNullPlain(final @lombok.NonNull int i, final @lombok.NonNull String s) {
+ public @java.lang.SuppressWarnings("all") NonNullPlain(final @lombok.NonNull int i, final @lombok.NonNull String s) {
super();
if ((s == null))
{
diff --git a/test/transform/resource/after-ecj/OnXJava7Style.java b/test/transform/resource/after-ecj/OnXJava7Style.java
new file mode 100644
index 00000000..67f6e686
--- /dev/null
+++ b/test/transform/resource/after-ecj/OnXJava7Style.java
@@ -0,0 +1,31 @@
+public class OnXJava7Style {
+ @interface Foo {
+ String value() default "";
+ }
+ @interface Bar {
+ String stuff() default "";
+ }
+ @lombok.Getter() String a;
+ @lombok.Setter() String b;
+ @lombok.Setter() String c;
+ @lombok.Setter() String d;
+ @lombok.Getter() String e;
+ public OnXJava7Style() {
+ super();
+ }
+ public @Foo @java.lang.SuppressWarnings("all") String getA() {
+ return this.a;
+ }
+ public @Foo() @java.lang.SuppressWarnings("all") void setB(final String b) {
+ this.b = b;
+ }
+ public @java.lang.SuppressWarnings("all") void setC(final @Foo("a") String c) {
+ this.c = c;
+ }
+ public @java.lang.SuppressWarnings("all") void setD(final @Bar(stuff = "b") String d) {
+ this.d = d;
+ }
+ public @Foo(value = "c") @Bar(stuff = "d") @java.lang.SuppressWarnings("all") String getE() {
+ return this.e;
+ }
+}
diff --git a/test/transform/resource/after-ecj/OnXJava7StyleOn8.java b/test/transform/resource/after-ecj/OnXJava7StyleOn8.java
new file mode 100644
index 00000000..d3adca1c
--- /dev/null
+++ b/test/transform/resource/after-ecj/OnXJava7StyleOn8.java
@@ -0,0 +1,31 @@
+public class OnXJava7StyleOn8 {
+ @interface Foo {
+ String value() default "";
+ }
+ @interface Bar {
+ String stuff() default "";
+ }
+ @lombok.Getter() String a;
+ @lombok.Setter() String b;
+ @lombok.Setter() String c;
+ @lombok.Setter() String d;
+ @lombok.Getter() String e;
+ public OnXJava7StyleOn8() {
+ super();
+ }
+ public @Foo @java.lang.SuppressWarnings("all") String getA() {
+ return this.a;
+ }
+ public @Foo() @java.lang.SuppressWarnings("all") void setB(final String b) {
+ this.b = b;
+ }
+ public @java.lang.SuppressWarnings("all") void setC(final @Foo("a") String c) {
+ this.c = c;
+ }
+ public @java.lang.SuppressWarnings("all") void setD(final @Bar(stuff = "b") String d) {
+ this.d = d;
+ }
+ public @Foo(value = "c") @Bar(stuff = "d") @java.lang.SuppressWarnings("all") String getE() {
+ return this.e;
+ }
+}
diff --git a/test/transform/resource/after-ecj/OnXJava8Style.java b/test/transform/resource/after-ecj/OnXJava8Style.java
new file mode 100644
index 00000000..4e39460e
--- /dev/null
+++ b/test/transform/resource/after-ecj/OnXJava8Style.java
@@ -0,0 +1,31 @@
+public class OnXJava8Style {
+ @interface Foo {
+ String value() default "";
+ }
+ @interface Bar {
+ String stuff() default "";
+ }
+ @lombok.Getter() String a;
+ @lombok.Setter() String b;
+ @lombok.Setter() String c;
+ @lombok.Setter() String d;
+ @lombok.Getter() String e;
+ public OnXJava8Style() {
+ super();
+ }
+ public @Foo @java.lang.SuppressWarnings("all") String getA() {
+ return this.a;
+ }
+ public @Foo() @java.lang.SuppressWarnings("all") void setB(final String b) {
+ this.b = b;
+ }
+ public @java.lang.SuppressWarnings("all") void setC(final @Foo("a") String c) {
+ this.c = c;
+ }
+ public @java.lang.SuppressWarnings("all") void setD(final @Bar(stuff = "b") String d) {
+ this.d = d;
+ }
+ public @Foo(value = "c") @Bar(stuff = "d") @java.lang.SuppressWarnings("all") String getE() {
+ return this.e;
+ }
+}
diff --git a/test/transform/resource/after-ecj/OnXJava8StyleOn7.java b/test/transform/resource/after-ecj/OnXJava8StyleOn7.java
new file mode 100644
index 00000000..fca90ad7
--- /dev/null
+++ b/test/transform/resource/after-ecj/OnXJava8StyleOn7.java
@@ -0,0 +1,31 @@
+public class OnXJava8StyleOn7 {
+ @interface Foo {
+ String value() default "";
+ }
+ @interface Bar {
+ String stuff() default "";
+ }
+ @lombok.Getter() String a;
+ @lombok.Setter() String b;
+ @lombok.Setter() String c;
+ @lombok.Setter() String d;
+ @lombok.Getter() String e;
+ public OnXJava8StyleOn7() {
+ super();
+ }
+ public @Foo @java.lang.SuppressWarnings("all") String getA() {
+ return this.a;
+ }
+ public @Foo() @java.lang.SuppressWarnings("all") void setB(final String b) {
+ this.b = b;
+ }
+ public @java.lang.SuppressWarnings("all") void setC(final @Foo("a") String c) {
+ this.c = c;
+ }
+ public @java.lang.SuppressWarnings("all") void setD(final @Bar(stuff = "b") String d) {
+ this.d = d;
+ }
+ public @Foo(value = "c") @Bar(stuff = "d") @java.lang.SuppressWarnings("all") String getE() {
+ return this.e;
+ }
+}
diff --git a/test/transform/resource/after-ecj/Tolerate.java b/test/transform/resource/after-ecj/Tolerate.java
index b5039a98..1fe5fe4c 100644
--- a/test/transform/resource/after-ecj/Tolerate.java
+++ b/test/transform/resource/after-ecj/Tolerate.java
@@ -28,7 +28,7 @@ import java.util.regex.Pattern;
public @java.lang.SuppressWarnings("all") Tolerate2 withPattern(final Pattern pattern) {
return ((this.pattern == pattern) ? this : new Tolerate2(pattern));
}
- public @java.beans.ConstructorProperties({"pattern"}) @java.lang.SuppressWarnings("all") Tolerate2(final Pattern pattern) {
+ public @java.lang.SuppressWarnings("all") Tolerate2(final Pattern pattern) {
super();
this.pattern = pattern;
}
diff --git a/test/transform/resource/after-ecj/UtilityClass.java b/test/transform/resource/after-ecj/UtilityClass.java
new file mode 100644
index 00000000..656c0184
--- /dev/null
+++ b/test/transform/resource/after-ecj/UtilityClass.java
@@ -0,0 +1,66 @@
+final @lombok.experimental.UtilityClass class UtilityClass {
+ protected static class InnerClass {
+ private String innerInnerMember;
+ protected InnerClass() {
+ super();
+ }
+ }
+ private static long someField = System.currentTimeMillis();
+ <clinit>() {
+ }
+ static void someMethod() {
+ System.out.println();
+ }
+ private @java.lang.SuppressWarnings("all") UtilityClass() {
+ super();
+ throw new java.lang.UnsupportedOperationException("This is a utility class and cannot be instantiated");
+ }
+}
+class UtilityInner {
+ static class InnerInner {
+ static final @lombok.experimental.UtilityClass class InnerInnerInner {
+ static int member;
+ <clinit>() {
+ }
+ private @java.lang.SuppressWarnings("all") InnerInnerInner() {
+ super();
+ throw new java.lang.UnsupportedOperationException("This is a utility class and cannot be instantiated");
+ }
+ }
+ InnerInner() {
+ super();
+ }
+ }
+ enum UtilityInsideEnum {
+ static final @lombok.experimental.UtilityClass class InsideEnum {
+ static int member;
+ <clinit>() {
+ }
+ private @java.lang.SuppressWarnings("all") InsideEnum() {
+ super();
+ throw new java.lang.UnsupportedOperationException("This is a utility class and cannot be instantiated");
+ }
+ }
+ FOO(),
+ BAR(),
+ <clinit>() {
+ }
+ UtilityInsideEnum() {
+ super();
+ }
+ }
+ interface UtilityInsideInterface {
+ final @lombok.experimental.UtilityClass class InsideInterface {
+ static int member;
+ <clinit>() {
+ }
+ private @java.lang.SuppressWarnings("all") InsideInterface() {
+ super();
+ throw new java.lang.UnsupportedOperationException("This is a utility class and cannot be instantiated");
+ }
+ }
+ }
+ UtilityInner() {
+ super();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/UtilityClassErrors.java b/test/transform/resource/after-ecj/UtilityClassErrors.java
new file mode 100644
index 00000000..b5a51313
--- /dev/null
+++ b/test/transform/resource/after-ecj/UtilityClassErrors.java
@@ -0,0 +1,38 @@
+final @lombok.experimental.UtilityClass class UtilityClassErrors1 {
+ private static String someField;
+ <clinit>() {
+ }
+ protected UtilityClassErrors1() {
+ super();
+ }
+ static void method() {
+ @lombok.experimental.UtilityClass class MethodLocalClass {
+ MethodLocalClass() {
+ super();
+ }
+ }
+ }
+}
+@lombok.experimental.UtilityClass enum UtilityClassErrors2 {
+ <clinit>() {
+ }
+ UtilityClassErrors2() {
+ super();
+ }
+}
+class UtilityClassErrors3 {
+ class NonStaticInner {
+ @lombok.experimental.UtilityClass class ThisShouldFail {
+ private String member;
+ ThisShouldFail() {
+ super();
+ }
+ }
+ NonStaticInner() {
+ super();
+ }
+ }
+ UtilityClassErrors3() {
+ super();
+ }
+}
diff --git a/test/transform/resource/after-ecj/ValAnonymousSubclassWithGenerics.java b/test/transform/resource/after-ecj/ValAnonymousSubclassWithGenerics.java
new file mode 100644
index 00000000..989555fc
--- /dev/null
+++ b/test/transform/resource/after-ecj/ValAnonymousSubclassWithGenerics.java
@@ -0,0 +1,28 @@
+import java.util.*;
+import lombok.val;
+public class ValAnonymousSubclassWithGenerics {
+ Object object = new Object() {
+ x() {
+ super();
+ }
+ void foo() {
+ final @val int j = 1;
+ }
+ };
+ java.util.List<String> names = new java.util.ArrayList<String>() {
+ x() {
+ super();
+ }
+ public String get(int i) {
+ final @val java.lang.String result = super.get(i);
+ return result;
+ }
+ };
+ public ValAnonymousSubclassWithGenerics() {
+ super();
+ }
+ void bar() {
+ final @val int k = super.hashCode();
+ int x = k;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/ValFinal.java b/test/transform/resource/after-ecj/ValFinal.java
new file mode 100644
index 00000000..d7cf9cb7
--- /dev/null
+++ b/test/transform/resource/after-ecj/ValFinal.java
@@ -0,0 +1,9 @@
+import lombok.val;
+public class ValFinal {
+ public ValFinal() {
+ super();
+ }
+ public void test() {
+ final @val int x = 10;
+ }
+}
diff --git a/test/transform/resource/after-ecj/ValInLambda.java b/test/transform/resource/after-ecj/ValInLambda.java
new file mode 100644
index 00000000..7669789b
--- /dev/null
+++ b/test/transform/resource/after-ecj/ValInLambda.java
@@ -0,0 +1,21 @@
+// version 8:
+
+import lombok.val;
+class ValInLambda {
+ Runnable foo = (Runnable) () -> {
+ final @val int i = 1;
+};
+ ValInLambda() {
+ super();
+ }
+ public void easyLambda() {
+ Runnable foo = (Runnable) () -> {
+ final @val int i = 1;
+};
+ }
+ public void easyIntersectionLambda() {
+ Runnable foo = (Runnable) () -> {
+ final @val int i = 1;
+};
+ }
+}
diff --git a/test/transform/resource/after-ecj/ValNullInit.java b/test/transform/resource/after-ecj/ValNullInit.java
new file mode 100644
index 00000000..bd89c023
--- /dev/null
+++ b/test/transform/resource/after-ecj/ValNullInit.java
@@ -0,0 +1,10 @@
+import lombok.val;
+
+class ValNullInit {
+ ValNullInit() {
+ super();
+ }
+ void method() {
+ final @val java.lang.Object x = null;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/ValWithLocalClasses.java b/test/transform/resource/after-ecj/ValWithLocalClasses.java
new file mode 100644
index 00000000..59880acf
--- /dev/null
+++ b/test/transform/resource/after-ecj/ValWithLocalClasses.java
@@ -0,0 +1,20 @@
+class ValWithLocalClasses1 {
+ {
+ final @lombok.val ValWithLocalClasses2 f2 = new ValWithLocalClasses2() {
+ x() {
+ super();
+ }
+ };
+ }
+ ValWithLocalClasses1() {
+ super();
+ }
+}
+class ValWithLocalClasses2 {
+ {
+ final @lombok.val int f3 = 0;
+ }
+ ValWithLocalClasses2() {
+ super();
+ }
+}
diff --git a/test/transform/resource/after-ecj/ValueCallSuper.java b/test/transform/resource/after-ecj/ValueCallSuper.java
new file mode 100644
index 00000000..0c28b9b6
--- /dev/null
+++ b/test/transform/resource/after-ecj/ValueCallSuper.java
@@ -0,0 +1,32 @@
+class ValueParent {
+ ValueParent() {
+ super();
+ }
+}
+final @lombok.Value class ValueCallSuper extends ValueParent {
+ public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
+ if ((o == this))
+ return true;
+ if ((! (o instanceof ValueCallSuper)))
+ return false;
+ final ValueCallSuper other = (ValueCallSuper) o;
+ if ((! other.canEqual((java.lang.Object) this)))
+ return false;
+ if ((! super.equals(o)))
+ return false;
+ return true;
+ }
+ protected @java.lang.SuppressWarnings("all") boolean canEqual(final java.lang.Object other) {
+ return (other instanceof ValueCallSuper);
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
+ int result = super.hashCode();
+ return result;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return "ValueCallSuper()";
+ }
+ public @java.lang.SuppressWarnings("all") ValueCallSuper() {
+ super();
+ }
+}
diff --git a/test/transform/resource/after-ecj/ValueExperimental.java b/test/transform/resource/after-ecj/ValueExperimental.java
deleted file mode 100644
index dd13574a..00000000
--- a/test/transform/resource/after-ecj/ValueExperimental.java
+++ /dev/null
@@ -1,39 +0,0 @@
-import lombok.experimental.Value;
-final @Value class ValueExperimental1 {
- public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
- if ((o == this))
- return true;
- if ((! (o instanceof ValueExperimental1)))
- return false;
- return true;
- }
- public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
- int result = 1;
- return result;
- }
- public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
- return "ValueExperimental1()";
- }
- public @java.lang.SuppressWarnings("all") ValueExperimental1() {
- super();
- }
-}
-final @lombok.experimental.Value class ValueExperimental2 {
- public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
- if ((o == this))
- return true;
- if ((! (o instanceof ValueExperimental2)))
- return false;
- return true;
- }
- public @java.lang.Override @java.lang.SuppressWarnings("all") int hashCode() {
- int result = 1;
- return result;
- }
- public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
- return "ValueExperimental2()";
- }
- public @java.lang.SuppressWarnings("all") ValueExperimental2() {
- super();
- }
-} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/ValuePlain.java b/test/transform/resource/after-ecj/ValuePlain.java
index 8162ab93..442a63ac 100644
--- a/test/transform/resource/after-ecj/ValuePlain.java
+++ b/test/transform/resource/after-ecj/ValuePlain.java
@@ -13,7 +13,7 @@ final @lombok.Value class Value1 {
return true;
if ((! (o instanceof Value1)))
return false;
- final @java.lang.SuppressWarnings("all") Value1 other = (Value1) o;
+ final Value1 other = (Value1) o;
if ((this.getX() != other.getX()))
return false;
final java.lang.Object this$name = this.getName();
@@ -27,13 +27,13 @@ final @lombok.Value class Value1 {
int result = 1;
result = ((result * PRIME) + this.getX());
final java.lang.Object $name = this.getName();
- result = ((result * PRIME) + (($name == null) ? 0 : $name.hashCode()));
+ result = ((result * PRIME) + (($name == null) ? 43 : $name.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (((("Value1(x=" + this.getX()) + ", name=") + this.getName()) + ")");
}
- public @java.beans.ConstructorProperties({"x", "name"}) @java.lang.SuppressWarnings("all") Value1(final int x, final String name) {
+ public @java.lang.SuppressWarnings("all") Value1(final int x, final String name) {
super();
this.x = x;
this.name = name;
@@ -53,7 +53,7 @@ final @lombok.Value class Value1 {
return true;
if ((! (o instanceof Value2)))
return false;
- final @java.lang.SuppressWarnings("all") Value2 other = (Value2) o;
+ final Value2 other = (Value2) o;
if ((! other.canEqual((java.lang.Object) this)))
return false;
if ((this.getX() != other.getX()))
@@ -72,13 +72,13 @@ final @lombok.Value class Value1 {
int result = 1;
result = ((result * PRIME) + this.getX());
final java.lang.Object $name = this.getName();
- result = ((result * PRIME) + (($name == null) ? 0 : $name.hashCode()));
+ result = ((result * PRIME) + (($name == null) ? 43 : $name.hashCode()));
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (((("Value2(x=" + this.getX()) + ", name=") + this.getName()) + ")");
}
- public @java.beans.ConstructorProperties({"x", "name"}) @java.lang.SuppressWarnings("all") Value2(final int x, final String name) {
+ public @java.lang.SuppressWarnings("all") Value2(final int x, final String name) {
super();
this.x = x;
this.name = name;
@@ -98,7 +98,7 @@ final @Value class Value3 {
return true;
if ((! (o instanceof Value3)))
return false;
- final @java.lang.SuppressWarnings("all") Value3 other = (Value3) o;
+ final Value3 other = (Value3) o;
if ((this.getX() != other.getX()))
return false;
if ((this.getY() != other.getY()))
@@ -115,7 +115,7 @@ final @Value class Value3 {
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
return (((("Value3(x=" + this.getX()) + ", y=") + this.getY()) + ")");
}
- public @java.beans.ConstructorProperties({"x", "y"}) @java.lang.SuppressWarnings("all") Value3(final int x, final int y) {
+ public @java.lang.SuppressWarnings("all") Value3(final int x, final int y) {
super();
this.x = x;
this.y = y;
diff --git a/test/transform/resource/after-ecj/ValueExperimentalStarImport.java b/test/transform/resource/after-ecj/ValueStaticField.java
index b69e85d9..dd116fc7 100644
--- a/test/transform/resource/after-ecj/ValueExperimentalStarImport.java
+++ b/test/transform/resource/after-ecj/ValueStaticField.java
@@ -1,9 +1,13 @@
-import lombok.experimental.*;
-final @Value class ValueExperimentalStarImport {
+import lombok.Value;
+final @Value class ValueStaticField {
+ static int x;
+ static String PASSWORD = "Ken sent me";
+ <clinit>() {
+ }
public @java.lang.Override @java.lang.SuppressWarnings("all") boolean equals(final java.lang.Object o) {
if ((o == this))
return true;
- if ((! (o instanceof ValueExperimentalStarImport)))
+ if ((! (o instanceof ValueStaticField)))
return false;
return true;
}
@@ -12,9 +16,9 @@ final @Value class ValueExperimentalStarImport {
return result;
}
public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
- return "ValueExperimentalStarImport()";
+ return "ValueStaticField()";
}
- public @java.lang.SuppressWarnings("all") ValueExperimentalStarImport() {
+ public @java.lang.SuppressWarnings("all") ValueStaticField() {
super();
}
-}
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarComplex.java b/test/transform/resource/after-ecj/VarComplex.java
new file mode 100644
index 00000000..97a0a177
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarComplex.java
@@ -0,0 +1,26 @@
+import lombok.var;
+public class VarComplex {
+ private String field = "";
+ private static final int CONSTANT = 20;
+ <clinit>() {
+ }
+ public VarComplex() {
+ super();
+ }
+ public void testComplex() {
+ @var char[] shouldBeCharArray = field.toCharArray();
+ @var int shouldBeInt = CONSTANT;
+ @var java.lang.Object lock = new Object();
+ synchronized (lock)
+ {
+ @var int field = 20;
+ @var int inner = 10;
+ switch (field) {
+ case 5 :
+ @var char[] shouldBeCharArray2 = shouldBeCharArray;
+ @var int innerInner = inner;
+ }
+ }
+ @var java.lang.String shouldBeString = field;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarInFor.java b/test/transform/resource/after-ecj/VarInFor.java
new file mode 100644
index 00000000..1799d9b7
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarInFor.java
@@ -0,0 +1,14 @@
+import lombok.var;
+public class VarInFor {
+ public VarInFor() {
+ super();
+ }
+ public void enhancedFor() {
+ int[] list = new int[]{1, 2};
+ for (@var int shouldBeInt : list)
+ {
+ System.out.println(shouldBeInt);
+ @var int shouldBeInt2 = shouldBeInt;
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarInForOld.java b/test/transform/resource/after-ecj/VarInForOld.java
new file mode 100644
index 00000000..065ea94d
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarInForOld.java
@@ -0,0 +1,12 @@
+import lombok.var;
+public class VarInForOld {
+ public VarInForOld() {
+ super();
+ }
+ public void oldFor() {
+ for (@var int i = 0;; (i < 100); ++ i)
+ {
+ System.out.println(i);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarModifier.java b/test/transform/resource/after-ecj/VarModifier.java
new file mode 100644
index 00000000..d11142ca
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarModifier.java
@@ -0,0 +1,12 @@
+import lombok.experimental.var;
+public class VarModifier {
+ private String field = "";
+ public VarModifier() {
+ super();
+ }
+ public void testComplex() {
+ final @var char[] shouldBeFinalCharArray = field.toCharArray();
+ @var char[] shouldBeCharArray = field.toCharArray();
+
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarNullInit.java b/test/transform/resource/after-ecj/VarNullInit.java
new file mode 100644
index 00000000..848744cc
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarNullInit.java
@@ -0,0 +1,9 @@
+import lombok.var;
+public class VarNullInit {
+ public VarNullInit() {
+ super();
+ }
+ void method() {
+ @var java.lang.Object x = null;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarWarning.java b/test/transform/resource/after-ecj/VarWarning.java
new file mode 100644
index 00000000..4caf90f8
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarWarning.java
@@ -0,0 +1,10 @@
+import lombok.var;
+public class VarWarning {
+ public VarWarning() {
+ super();
+ }
+ public void isOkay() {
+ @var java.lang.String x = "Warning";
+ x.toLowerCase();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/WitherAndAllArgsConstructor.java b/test/transform/resource/after-ecj/WitherAndAllArgsConstructor.java
index 091024e2..10e993e1 100644
--- a/test/transform/resource/after-ecj/WitherAndAllArgsConstructor.java
+++ b/test/transform/resource/after-ecj/WitherAndAllArgsConstructor.java
@@ -10,7 +10,7 @@
public @java.lang.SuppressWarnings("all") WitherAndAllArgsConstructor<T, J, L> withTest2(final java.util.List<L> test2) {
return ((this.test2 == test2) ? this : new WitherAndAllArgsConstructor<T, J, L>(this.test, test2, this.y, this.z));
}
- public @java.beans.ConstructorProperties({"test", "test2", "y", "z"}) @java.lang.SuppressWarnings("all") WitherAndAllArgsConstructor(final J test, final java.util.List<L> test2, final int y, final int z) {
+ public @java.lang.SuppressWarnings("all") WitherAndAllArgsConstructor(final J test, final java.util.List<L> test2, final int y, final int z) {
super();
this.test = test;
this.test2 = test2;
diff --git a/test/transform/resource/after-ecj/WitherWithAbstract.java b/test/transform/resource/after-ecj/WitherWithAbstract.java
new file mode 100644
index 00000000..ed71347e
--- /dev/null
+++ b/test/transform/resource/after-ecj/WitherWithAbstract.java
@@ -0,0 +1,7 @@
+abstract class WitherWithAbstract {
+ @lombok.experimental.Wither String foo;
+ WitherWithAbstract() {
+ super();
+ }
+ public abstract @java.lang.SuppressWarnings("all") WitherWithAbstract withFoo(final String foo);
+}
diff --git a/test/transform/resource/before/BuilderChainAndFluent.java b/test/transform/resource/before/BuilderChainAndFluent.java
deleted file mode 100644
index 4d08741b..00000000
--- a/test/transform/resource/before/BuilderChainAndFluent.java
+++ /dev/null
@@ -1,4 +0,0 @@
-@lombok.experimental.Builder(fluent = false, chain = false)
-class BuilderChainAndFluent {
- private final int yes;
-}
diff --git a/test/transform/resource/before/BuilderComplex.java b/test/transform/resource/before/BuilderComplex.java
index 590a2723..c13f5877 100644
--- a/test/transform/resource/before/BuilderComplex.java
+++ b/test/transform/resource/before/BuilderComplex.java
@@ -1,5 +1,5 @@
import java.util.List;
-import lombok.experimental.Builder;
+import lombok.Builder;
class BuilderComplex {
@Builder(buildMethodName = "execute")
diff --git a/test/transform/resource/before/BuilderDefaults.java b/test/transform/resource/before/BuilderDefaults.java
new file mode 100644
index 00000000..a1ce14a5
--- /dev/null
+++ b/test/transform/resource/before/BuilderDefaults.java
@@ -0,0 +1,9 @@
+import lombok.Builder;
+import lombok.Value;
+
+@Value @Builder
+public class BuilderDefaults {
+ @Builder.Default int x = 10;
+ String name;
+ @Builder.Default long z = System.currentTimeMillis();
+}
diff --git a/test/transform/resource/before/BuilderDefaultsGenerics.java b/test/transform/resource/before/BuilderDefaultsGenerics.java
new file mode 100644
index 00000000..fffc9739
--- /dev/null
+++ b/test/transform/resource/before/BuilderDefaultsGenerics.java
@@ -0,0 +1,9 @@
+import lombok.Builder;
+import java.util.*;
+
+@Builder
+public class BuilderDefaultsGenerics<N extends Number, T, R extends List<T>> {
+ @Builder.Default private java.util.concurrent.Callable<N> callable = null;
+ @Builder.Default private T tee = null;
+ @Builder.Default private R arrr = null;
+}
diff --git a/test/transform/resource/before/BuilderDefaultsWarnings.java b/test/transform/resource/before/BuilderDefaultsWarnings.java
new file mode 100644
index 00000000..8ef3dc59
--- /dev/null
+++ b/test/transform/resource/before/BuilderDefaultsWarnings.java
@@ -0,0 +1,18 @@
+import lombok.Builder;
+import lombok.Singular;
+
+@Builder
+public class BuilderDefaultsWarnings {
+ long x = System.currentTimeMillis();
+ final int y = 5;
+ @Builder.Default int z;
+ @Builder.Default @Singular java.util.List<String> items;
+}
+
+class NoBuilderButHasDefaults {
+ @Builder.Default private final long z = 5;
+
+ @Builder
+ public NoBuilderButHasDefaults() {
+ }
+}
diff --git a/test/transform/resource/before/BuilderGenericMethod.java b/test/transform/resource/before/BuilderGenericMethod.java
new file mode 100644
index 00000000..63dcb4db
--- /dev/null
+++ b/test/transform/resource/before/BuilderGenericMethod.java
@@ -0,0 +1,11 @@
+import java.util.List;
+
+import lombok.Builder;
+import java.util.*;
+
+class BuilderGenericMethod<T> {
+ @Builder
+ public <N extends Number> Map<N,T> foo(int a, long b) {
+ return null;
+ }
+}
diff --git a/test/transform/resource/before/BuilderInstanceMethod.java b/test/transform/resource/before/BuilderInstanceMethod.java
new file mode 100644
index 00000000..666664a2
--- /dev/null
+++ b/test/transform/resource/before/BuilderInstanceMethod.java
@@ -0,0 +1,8 @@
+import java.util.List;
+
+class BuilderInstanceMethod<T> {
+ @lombok.Builder
+ public String create(int show, final int yes, List<T> also, int $andMe) {
+ return "" + show + yes + also + $andMe;
+ }
+}
diff --git a/test/transform/resource/before/BuilderInvalidUse.java b/test/transform/resource/before/BuilderInvalidUse.java
index d7052e1e..1a5f2950 100644
--- a/test/transform/resource/before/BuilderInvalidUse.java
+++ b/test/transform/resource/before/BuilderInvalidUse.java
@@ -1,5 +1,5 @@
//skip compare content
-@lombok.experimental.Builder
+@lombok.Builder
class BuilderInvalidUse {
private int something;
@@ -10,7 +10,7 @@ class BuilderInvalidUse {
}
}
-@lombok.experimental.Builder
+@lombok.Builder
class AlsoInvalid {
@lombok.Value
public static class AlsoInvalidBuilder {
diff --git a/test/transform/resource/before/BuilderSimple.java b/test/transform/resource/before/BuilderSimple.java
index c749bb6c..83c89713 100644
--- a/test/transform/resource/before/BuilderSimple.java
+++ b/test/transform/resource/before/BuilderSimple.java
@@ -1,6 +1,6 @@
import java.util.List;
-@lombok.experimental.Builder
+@lombok.Builder
class BuilderSimple<T> {
private final int noshow = 0;
private final int yes;
diff --git a/test/transform/resource/before/BuilderSingularGuavaListsSets.java b/test/transform/resource/before/BuilderSingularGuavaListsSets.java
new file mode 100644
index 00000000..73e8018c
--- /dev/null
+++ b/test/transform/resource/before/BuilderSingularGuavaListsSets.java
@@ -0,0 +1,16 @@
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableCollection;
+import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.ImmutableSortedSet;
+import com.google.common.collect.ImmutableTable;
+
+import lombok.Singular;
+
+@lombok.Builder
+class BuilderSingularGuavaListsSets<T> {
+ @Singular private ImmutableList<T> cards;
+ @Singular private ImmutableCollection<? extends Number> frogs;
+ @SuppressWarnings("all") @Singular("rawSet") private ImmutableSet rawSet;
+ @Singular private ImmutableSortedSet<String> passes;
+ @Singular private ImmutableTable<? extends Number, ? extends Number, String> users;
+}
diff --git a/test/transform/resource/before/BuilderSingularGuavaMaps.java b/test/transform/resource/before/BuilderSingularGuavaMaps.java
new file mode 100644
index 00000000..64a53570
--- /dev/null
+++ b/test/transform/resource/before/BuilderSingularGuavaMaps.java
@@ -0,0 +1,12 @@
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableBiMap;
+import com.google.common.collect.ImmutableSortedMap;
+
+import lombok.Singular;
+
+@lombok.Builder
+class BuilderSingularGuavaMaps<K, V> {
+ @Singular private ImmutableMap<K, V> battleaxes;
+ @Singular private ImmutableSortedMap<Integer, ? extends V> vertices;
+ @SuppressWarnings("all") @Singular("rawMap") private ImmutableBiMap rawMap;
+}
diff --git a/test/transform/resource/before/BuilderSingularLists.java b/test/transform/resource/before/BuilderSingularLists.java
new file mode 100644
index 00000000..93fced8e
--- /dev/null
+++ b/test/transform/resource/before/BuilderSingularLists.java
@@ -0,0 +1,11 @@
+import java.util.List;
+import java.util.Collection;
+
+import lombok.Singular;
+
+@lombok.Builder
+class BuilderSingularLists<T> {
+ @Singular private List<T> children;
+ @Singular private Collection<? extends Number> scarves;
+ @SuppressWarnings("all") @Singular("rawList") private List rawList;
+}
diff --git a/test/transform/resource/before/BuilderSingularMaps.java b/test/transform/resource/before/BuilderSingularMaps.java
new file mode 100644
index 00000000..7fe1a149
--- /dev/null
+++ b/test/transform/resource/before/BuilderSingularMaps.java
@@ -0,0 +1,15 @@
+//FORMAT: javaLangAsFQN = skip
+//FORMAT: generated = skip
+//FORMAT: finalParams = skip
+import java.util.Map;
+import java.util.SortedMap;
+
+import lombok.Singular;
+
+@lombok.Builder
+class BuilderSingularMaps<K, V> {
+ @Singular private Map<K, V> women;
+ @Singular private SortedMap<K, ? extends Number> men;
+ @SuppressWarnings("all") @Singular("rawMap") private Map rawMap;
+ @Singular("stringMap") private Map<String, V> stringMap;
+}
diff --git a/test/transform/resource/before/BuilderSingularNoAuto.java b/test/transform/resource/before/BuilderSingularNoAuto.java
new file mode 100644
index 00000000..f58c4075
--- /dev/null
+++ b/test/transform/resource/before/BuilderSingularNoAuto.java
@@ -0,0 +1,11 @@
+//CONF: lombok.singular.auto = false
+import java.util.List;
+
+import lombok.Singular;
+
+@lombok.Builder
+class BuilderSingularNoAuto {
+ @Singular private List<String> things;
+ @Singular("widget") private List<String> widgets;
+ @Singular private List<String> items;
+}
diff --git a/test/transform/resource/before/BuilderSingularRedirectToGuava.java b/test/transform/resource/before/BuilderSingularRedirectToGuava.java
new file mode 100644
index 00000000..2dfa7684
--- /dev/null
+++ b/test/transform/resource/before/BuilderSingularRedirectToGuava.java
@@ -0,0 +1,13 @@
+//CONF: lombok.singular.useGuava = true
+import java.util.Set;
+import java.util.NavigableMap;
+import java.util.Collection;
+
+import lombok.Singular;
+
+@lombok.Builder
+class BuilderSingularRedirectToGuava {
+ @Singular private Set<String> dangerMice;
+ @Singular private NavigableMap<Integer, Number> things;
+ @Singular private Collection<Class<?>> doohickeys;
+}
diff --git a/test/transform/resource/before/BuilderSingularSets.java b/test/transform/resource/before/BuilderSingularSets.java
new file mode 100644
index 00000000..68c4510a
--- /dev/null
+++ b/test/transform/resource/before/BuilderSingularSets.java
@@ -0,0 +1,12 @@
+import java.util.Set;
+import java.util.SortedSet;
+
+import lombok.Singular;
+
+@lombok.Builder
+class BuilderSingularSets<T> {
+ @Singular private Set<T> dangerMice;
+ @Singular private SortedSet<? extends Number> octopodes;
+ @SuppressWarnings("all") @Singular("rawSet") private Set rawSet;
+ @Singular("stringSet") private Set<String> stringSet;
+}
diff --git a/test/transform/resource/before/BuilderSingularWithPrefixes.java b/test/transform/resource/before/BuilderSingularWithPrefixes.java
new file mode 100644
index 00000000..32d3e438
--- /dev/null
+++ b/test/transform/resource/before/BuilderSingularWithPrefixes.java
@@ -0,0 +1,7 @@
+import lombok.Singular;
+
+@lombok.Builder
+@lombok.experimental.Accessors(prefix = "_")
+class BuilderSingularWithPrefixes {
+ @Singular private java.util.List<String> _elems;
+}
diff --git a/test/transform/resource/before/BuilderValueData.java b/test/transform/resource/before/BuilderValueData.java
new file mode 100644
index 00000000..da4da99a
--- /dev/null
+++ b/test/transform/resource/before/BuilderValueData.java
@@ -0,0 +1,11 @@
+import java.util.List;
+
+@lombok.Builder @lombok.Value
+class BuilderAndValue {
+ private final int zero = 0;
+}
+
+@lombok.Builder @lombok.Data
+class BuilderAndData {
+ private final int zero = 0;
+}
diff --git a/test/transform/resource/before/BuilderWithAccessors.java b/test/transform/resource/before/BuilderWithAccessors.java
index 4f5660a1..79546885 100644
--- a/test/transform/resource/before/BuilderWithAccessors.java
+++ b/test/transform/resource/before/BuilderWithAccessors.java
@@ -1,4 +1,4 @@
-@lombok.experimental.Builder @lombok.experimental.Accessors(prefix={"p", "_"})
+@lombok.Builder @lombok.experimental.Accessors(prefix={"p", "_"})
class BuilderWithAccessors {
private final int plower;
private final int pUpper;
diff --git a/test/transform/resource/before/BuilderWithDeprecated.java b/test/transform/resource/before/BuilderWithDeprecated.java
new file mode 100644
index 00000000..cd8ffad9
--- /dev/null
+++ b/test/transform/resource/before/BuilderWithDeprecated.java
@@ -0,0 +1,11 @@
+import com.google.common.collect.ImmutableList;
+import lombok.Builder;
+import lombok.Singular;
+
+@Builder
+public class BuilderWithDeprecated {
+ /** @deprecated */ String dep1;
+ @Deprecated int dep2;
+ @Singular @Deprecated java.util.List<String> strings;
+ @Singular @Deprecated ImmutableList<Integer> numbers;
+}
diff --git a/test/transform/resource/before/BuilderWithExistingBuilderClass.java b/test/transform/resource/before/BuilderWithExistingBuilderClass.java
index 262e3b85..c8e0a24b 100644
--- a/test/transform/resource/before/BuilderWithExistingBuilderClass.java
+++ b/test/transform/resource/before/BuilderWithExistingBuilderClass.java
@@ -1,4 +1,4 @@
-import lombok.experimental.Builder;
+import lombok.Builder;
class BuilderWithExistingBuilderClass<T, K extends Number> {
@Builder
diff --git a/test/transform/resource/before/BuilderWithRecursiveGenerics.java b/test/transform/resource/before/BuilderWithRecursiveGenerics.java
new file mode 100644
index 00000000..041da414
--- /dev/null
+++ b/test/transform/resource/before/BuilderWithRecursiveGenerics.java
@@ -0,0 +1,13 @@
+//issue #1298
+import java.util.Set;
+import lombok.Builder;
+import lombok.Value;
+
+public class BuilderWithRecursiveGenerics {
+ interface Inter<T, U extends Inter<T, U>> {}
+
+ @Builder @Value public static class Test<Foo, Bar extends Set<Foo>, Quz extends Inter<Bar, Quz>> {
+ Foo foo;
+ Bar bar;
+ }
+}
diff --git a/test/transform/resource/before/BuilderWithToBuilder.java b/test/transform/resource/before/BuilderWithToBuilder.java
new file mode 100644
index 00000000..63e16ae8
--- /dev/null
+++ b/test/transform/resource/before/BuilderWithToBuilder.java
@@ -0,0 +1,31 @@
+import java.util.List;
+import lombok.Builder;
+@Builder(toBuilder = true) @lombok.experimental.Accessors(prefix = "m")
+class BuilderWithToBuilder<T> {
+ private String mOne, mTwo;
+ @Builder.ObtainVia(method = "rrr", isStatic = true) private T foo;
+ @lombok.Singular private List<T> bars;
+ public static <K> K rrr(BuilderWithToBuilder<K> x) {
+ return x.foo;
+ }
+}
+@lombok.experimental.Accessors(prefix = "m")
+class ConstructorWithToBuilder<T> {
+ private String mOne, mTwo;
+ private T foo;
+ @lombok.Singular private List<T> bars;
+ @Builder(toBuilder = true)
+ public ConstructorWithToBuilder(String mOne, @Builder.ObtainVia(field = "foo") T bar) {
+ }
+}
+@lombok.experimental.Accessors(prefix = "m")
+class StaticWithToBuilder<T, K> {
+ private String mOne, mTwo;
+ private T foo;
+ private K bar;
+ @lombok.Singular private List<T> bars;
+ @Builder(toBuilder = true)
+ public static <Z> StaticWithToBuilder<Z, String> test(String mOne, @Builder.ObtainVia(field = "foo") Z bar) {
+ return new StaticWithToBuilder<Z, String>();
+ }
+}
diff --git a/test/transform/resource/before/BuilderWithTolerate.java b/test/transform/resource/before/BuilderWithTolerate.java
new file mode 100644
index 00000000..48fefce5
--- /dev/null
+++ b/test/transform/resource/before/BuilderWithTolerate.java
@@ -0,0 +1,18 @@
+import lombok.Builder;
+import lombok.experimental.Tolerate;
+
+@Builder
+public class BuilderWithTolerate {
+ private final int value;
+
+ public static void main(String[] args) {
+ BuilderWithTolerate.builder().value("42").build();
+ }
+
+ public static class BuilderWithTolerateBuilder {
+ @Tolerate
+ public BuilderWithTolerateBuilder value(String s) {
+ return this.value(Integer.parseInt(s));
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/Constructors.java b/test/transform/resource/before/Constructors.java
index c80acf2b..3569986f 100644
--- a/test/transform/resource/before/Constructors.java
+++ b/test/transform/resource/before/Constructors.java
@@ -32,4 +32,13 @@
}
@lombok.AllArgsConstructor(access=lombok.AccessLevel.PACKAGE) class AllArgsConstructorPackageAccess {
final String x;
-} \ No newline at end of file
+}
+@lombok.NoArgsConstructor(force = true) class NoArgsConstructor2 {
+ final int x;
+ final double y;
+ final char c;
+ final boolean b;
+ final float f;
+ final String s;
+ byte z;
+}
diff --git a/test/transform/resource/before/ConstructorsConfiguration.java b/test/transform/resource/before/ConstructorsConfiguration.java
index 8fae10fc..4d0e8bd9 100644
--- a/test/transform/resource/before/ConstructorsConfiguration.java
+++ b/test/transform/resource/before/ConstructorsConfiguration.java
@@ -3,7 +3,3 @@
class ConstructorsConfiguration {
int x;
}
-@lombok.AllArgsConstructor(suppressConstructorProperties=false)
-class ConstructorsConfigurationExplicit {
- int x;
-}
diff --git a/test/transform/resource/before/ConstructorsWithAccessors.java b/test/transform/resource/before/ConstructorsWithAccessors.java
index e5d2939f..e67a47ce 100644
--- a/test/transform/resource/before/ConstructorsWithAccessors.java
+++ b/test/transform/resource/before/ConstructorsWithAccessors.java
@@ -4,3 +4,11 @@
int _huh;
int __huh2;
}
+
+@lombok.AllArgsConstructor @lombok.experimental.Accessors(prefix={"p", "_"}) class ConstructorsWithAccessorsNonNull {
+ @lombok.NonNull Integer plower;
+ @lombok.NonNull Integer pUpper;
+ @lombok.NonNull Integer _huh;
+ @lombok.NonNull final Integer __huh2;
+}
+
diff --git a/test/transform/resource/before/DataConfiguration.java b/test/transform/resource/before/DataConfiguration.java
index 660d6d18..8b9657f9 100644
--- a/test/transform/resource/before/DataConfiguration.java
+++ b/test/transform/resource/before/DataConfiguration.java
@@ -1,4 +1,6 @@
//CONF: lombok.anyConstructor.suppressConstructorProperties = true
+//CONF: lombok.toString.doNotUseGetters = true
+//CONF: lombok.equalsAndHashCode.doNotUseGetters = true
@lombok.Data
class DataConfiguration {
final int x;
diff --git a/test/transform/resource/before/DelegateWithVarargs.java b/test/transform/resource/before/DelegateWithVarargs.java
new file mode 100644
index 00000000..0c266620
--- /dev/null
+++ b/test/transform/resource/before/DelegateWithVarargs.java
@@ -0,0 +1,12 @@
+import lombok.experimental.Delegate;
+
+class DelegateWithVarargs {
+ @Delegate private Bar bar;
+
+ private interface Bar {
+ void justOneParameter(int... varargs);
+ void multipleParameters(String first, int... varargs);
+ void array(int[] array);
+ void arrayVarargs(int[]... arrayVarargs);
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/EncodingUsAscii.java b/test/transform/resource/before/EncodingUsAscii.java
new file mode 100644
index 00000000..dbcd150b
--- /dev/null
+++ b/test/transform/resource/before/EncodingUsAscii.java
@@ -0,0 +1,5 @@
+//ENCODING: US-ASCII
+@lombok.ToString
+class EncodingUsAscii {
+ String foo\u0e51\u0e51 = "\u000e \10 ";
+} \ No newline at end of file
diff --git a/test/transform/resource/before/EncodingUtf8.java b/test/transform/resource/before/EncodingUtf8.java
new file mode 100644
index 00000000..75b0ee00
--- /dev/null
+++ b/test/transform/resource/before/EncodingUtf8.java
@@ -0,0 +1,5 @@
+//ENCODING: UTF-8
+@lombok.ToString
+class EncodingUtf8 {
+ String foo\u0e51๑ = "\u000e \10 ";
+} \ No newline at end of file
diff --git a/test/transform/resource/before/EqualsAndHashCodeConfigKeys1.java b/test/transform/resource/before/EqualsAndHashCodeConfigKeys1.java
new file mode 100644
index 00000000..38520d8f
--- /dev/null
+++ b/test/transform/resource/before/EqualsAndHashCodeConfigKeys1.java
@@ -0,0 +1,9 @@
+//CONF: lombok.equalsAndHashCode.callSuper = skip
+
+@lombok.EqualsAndHashCode
+class EqualsAndHashCodeConfigKeys1Parent {
+}
+@lombok.EqualsAndHashCode
+class EqualsAndHashCodeConfigKeys1 extends EqualsAndHashCodeConfigKeys1Parent {
+ int x;
+}
diff --git a/test/transform/resource/before/EqualsAndHashCodeConfigKeys2.java b/test/transform/resource/before/EqualsAndHashCodeConfigKeys2.java
new file mode 100644
index 00000000..08698184
--- /dev/null
+++ b/test/transform/resource/before/EqualsAndHashCodeConfigKeys2.java
@@ -0,0 +1,11 @@
+//CONF: lombok.equalsAndHashCode.callSuper = call
+@lombok.EqualsAndHashCode
+class EqualsAndHashCodeConfigKeys2Object extends Object {
+}
+@lombok.EqualsAndHashCode
+class EqualsAndHashCodeConfigKeys2Parent {
+}
+@lombok.EqualsAndHashCode
+class EqualsAndHashCodeConfigKeys2 extends EqualsAndHashCodeConfigKeys2Parent {
+ int x;
+}
diff --git a/test/transform/resource/before/EqualsAndHashCodeNestedShadow.java b/test/transform/resource/before/EqualsAndHashCodeNestedShadow.java
new file mode 100644
index 00000000..2b0c4fa3
--- /dev/null
+++ b/test/transform/resource/before/EqualsAndHashCodeNestedShadow.java
@@ -0,0 +1,15 @@
+interface EqualsAndHashCodeNestedShadow {
+ interface Foo {
+ }
+ class Bar {
+ @lombok.EqualsAndHashCode(callSuper=false)
+ public static class Foo extends Bar implements EqualsAndHashCodeNestedShadow.Foo {
+ }
+ }
+
+ class Baz {
+ @lombok.EqualsAndHashCode(callSuper=false)
+ public static class Foo<T> extends Bar implements EqualsAndHashCodeNestedShadow.Foo {
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/EqualsAndHashCodeOfAndExclude.java b/test/transform/resource/before/EqualsAndHashCodeOfAndExclude.java
new file mode 100644
index 00000000..b8ba21fb
--- /dev/null
+++ b/test/transform/resource/before/EqualsAndHashCodeOfAndExclude.java
@@ -0,0 +1,11 @@
+@lombok.EqualsAndHashCode(of={"x"})
+final class EqualsAndHashCodeOf {
+ int x;
+ int y;
+}
+
+@lombok.EqualsAndHashCode(exclude={"y"})
+final class EqualsAndHashCodeExclude {
+ int x;
+ int y;
+}
diff --git a/test/transform/resource/before/EqualsAndHashCodeWithGenericsOnInners.java b/test/transform/resource/before/EqualsAndHashCodeWithGenericsOnInners.java
new file mode 100644
index 00000000..7af1d054
--- /dev/null
+++ b/test/transform/resource/before/EqualsAndHashCodeWithGenericsOnInners.java
@@ -0,0 +1,6 @@
+public class EqualsAndHashCodeWithGenericsOnInners<A> {
+ @lombok.EqualsAndHashCode class Inner<B> {
+ int x;
+ }
+}
+
diff --git a/test/transform/resource/before/EqualsAndHashCodeWithSomeExistingMethods.java b/test/transform/resource/before/EqualsAndHashCodeWithSomeExistingMethods.java
index debe75b9..ec5ef7ad 100644
--- a/test/transform/resource/before/EqualsAndHashCodeWithSomeExistingMethods.java
+++ b/test/transform/resource/before/EqualsAndHashCodeWithSomeExistingMethods.java
@@ -1,3 +1,4 @@
+//CONF: lombok.addGeneratedAnnotation = false
import lombok.*;
import static lombok.AccessLevel.NONE;
diff --git a/test/transform/resource/before/FieldDefaults.java b/test/transform/resource/before/FieldDefaults.java
index ffe89734..97389411 100644
--- a/test/transform/resource/before/FieldDefaults.java
+++ b/test/transform/resource/before/FieldDefaults.java
@@ -1,5 +1,6 @@
@lombok.experimental.FieldDefaults(makeFinal = true)
class FieldDefaults1 {
+ static int STATIC = 3;
int x;
@lombok.experimental.NonFinal int y;
@@ -10,6 +11,7 @@ class FieldDefaults1 {
@lombok.experimental.FieldDefaults(level = lombok.AccessLevel.PRIVATE)
class FieldDefaults2 {
+ static int STATIC = 3;
@lombok.experimental.PackagePrivate int x;
int y;
} \ No newline at end of file
diff --git a/test/transform/resource/before/FieldDefaultsViaConfig.java b/test/transform/resource/before/FieldDefaultsViaConfig.java
new file mode 100644
index 00000000..61f6daca
--- /dev/null
+++ b/test/transform/resource/before/FieldDefaultsViaConfig.java
@@ -0,0 +1,16 @@
+//CONF: lombok.fieldDefaults.defaultFinal = true
+//CONF: lombok.fieldDefaults.defaultPrivate = true
+class FieldDefaultsViaConfig1 {
+ int x;
+ @lombok.experimental.NonFinal int y;
+
+ FieldDefaultsViaConfig1(int x) {
+ this.x = x;
+ }
+}
+
+@lombok.experimental.FieldDefaults(level = lombok.AccessLevel.PROTECTED)
+class FieldDefaultsViaConfig2 {
+ @lombok.experimental.PackagePrivate int x = 2;
+ int y = 0;
+}
diff --git a/test/transform/resource/before/FieldDefaultsViaConfigAndRequiredArgsConstructor.java b/test/transform/resource/before/FieldDefaultsViaConfigAndRequiredArgsConstructor.java
new file mode 100644
index 00000000..8c0607d7
--- /dev/null
+++ b/test/transform/resource/before/FieldDefaultsViaConfigAndRequiredArgsConstructor.java
@@ -0,0 +1,5 @@
+//CONF: lombok.fieldDefaults.defaultFinal = true
+@lombok.RequiredArgsConstructor
+class FieldDefaultsViaConfigAndRequiredArgsConstructor {
+ int x;
+}
diff --git a/test/transform/resource/before/GenerateSuppressFBWarnings.java b/test/transform/resource/before/GenerateSuppressFBWarnings.java
new file mode 100644
index 00000000..2ab9c744
--- /dev/null
+++ b/test/transform/resource/before/GenerateSuppressFBWarnings.java
@@ -0,0 +1,5 @@
+//VERSION 7:
+//CONF: lombok.extern.findbugs.addSuppressFBWarnings = true
+class GenerateSuppressFBWarnings {
+ @lombok.Getter int y;
+}
diff --git a/test/transform/resource/before/GeneratedJavaxOff.java b/test/transform/resource/before/GeneratedJavaxOff.java
new file mode 100644
index 00000000..db7ee0d1
--- /dev/null
+++ b/test/transform/resource/before/GeneratedJavaxOff.java
@@ -0,0 +1,5 @@
+//CONF: lombok.addJavaxGeneratedAnnotation = false
+class GeneratedJavaxOff {
+ @lombok.Getter
+ int x;
+}
diff --git a/test/transform/resource/before/GeneratedJavaxOnLombokOn.java b/test/transform/resource/before/GeneratedJavaxOnLombokOn.java
new file mode 100644
index 00000000..4eb86de1
--- /dev/null
+++ b/test/transform/resource/before/GeneratedJavaxOnLombokOn.java
@@ -0,0 +1,7 @@
+//CONF: lombok.addJavaxGeneratedAnnotation = true
+//CONF: lombok.addLombokGeneratedAnnotation = true
+//version :8
+class GeneratedJavaxOnLombokOn {
+ @lombok.Getter
+ int x;
+}
diff --git a/test/transform/resource/before/GeneratedOff.java b/test/transform/resource/before/GeneratedOff.java
new file mode 100644
index 00000000..7d62991b
--- /dev/null
+++ b/test/transform/resource/before/GeneratedOff.java
@@ -0,0 +1,5 @@
+//CONF: lombok.addGeneratedAnnotation = false
+class GeneratedOff {
+ @lombok.Getter
+ int x;
+}
diff --git a/test/transform/resource/before/GeneratedOffJavaxOn.java b/test/transform/resource/before/GeneratedOffJavaxOn.java
new file mode 100644
index 00000000..83c03eac
--- /dev/null
+++ b/test/transform/resource/before/GeneratedOffJavaxOn.java
@@ -0,0 +1,7 @@
+//CONF: lombok.addGeneratedAnnotation = false
+//CONF: lombok.addJavaxGeneratedAnnotation = true
+//version :8
+class GeneratedOffJavaxOn {
+ @lombok.Getter
+ int x;
+}
diff --git a/test/transform/resource/before/GeneratedOffLombokOn.java b/test/transform/resource/before/GeneratedOffLombokOn.java
new file mode 100644
index 00000000..9d122306
--- /dev/null
+++ b/test/transform/resource/before/GeneratedOffLombokOn.java
@@ -0,0 +1,6 @@
+//CONF: lombok.addGeneratedAnnotation = false
+//CONF: lombok.addLombokGeneratedAnnotation = true
+class GeneratedOffLombokOn {
+ @lombok.Getter
+ int x;
+}
diff --git a/test/transform/resource/before/GetterLazyTransient.java b/test/transform/resource/before/GetterLazyTransient.java
new file mode 100644
index 00000000..1a913669
--- /dev/null
+++ b/test/transform/resource/before/GetterLazyTransient.java
@@ -0,0 +1,10 @@
+class GetterLazyTransient {
+ @lombok.Getter(lazy=true)
+ private final int nonTransientField = 1;
+
+ @lombok.Getter(lazy=true)
+ private final transient int transientField = 2;
+
+ @lombok.Getter
+ private final transient int nonLazyTransientField = 3;
+}
diff --git a/test/transform/resource/before/GetterOnMethodErrors2.java b/test/transform/resource/before/GetterOnMethodErrors2.java
index 2fd98c83..08ef13c6 100644
--- a/test/transform/resource/before/GetterOnMethodErrors2.java
+++ b/test/transform/resource/before/GetterOnMethodErrors2.java
@@ -1,3 +1,4 @@
+//version 8:
class GetterOnMethodErrors2 {
@lombok.Getter(onMethod=@_A_(@Deprecated)) private int bad1;
@lombok.Getter(onMethod=@__(5)) private int bad2;
diff --git a/test/transform/resource/before/GetterSetterJavadoc.java b/test/transform/resource/before/GetterSetterJavadoc.java
index 0dc64092..2ad46f8d 100644
--- a/test/transform/resource/before/GetterSetterJavadoc.java
+++ b/test/transform/resource/before/GetterSetterJavadoc.java
@@ -35,3 +35,30 @@ class GetterSetterJavadoc3 {
*/
@lombok.Getter @lombok.Setter private int fieldName;
}
+
+@lombok.experimental.Accessors(chain = true, fluent = true)
+class GetterSetterJavadoc4 {
+ /**
+ * Some text
+ *
+ * @param fieldName Hello, World4
+ * @return Sky is blue4
+ */
+ @lombok.Getter @lombok.Setter private int fieldName;
+}
+
+@lombok.experimental.Accessors(chain = true, fluent = true)
+class GetterSetterJavadoc5 {
+ /**
+ * Some text
+ *
+ * **SETTER**
+ * Setter section
+ * @param fieldName Hello, World5
+ * @return Sky is blue5
+ * **GETTER**
+ * Getter section
+ * @return Sky is blue5
+ */
+ @lombok.Getter @lombok.Setter private int fieldName;
+}
diff --git a/test/transform/resource/before/Helper.java b/test/transform/resource/before/Helper.java
new file mode 100644
index 00000000..cec9c7ce
--- /dev/null
+++ b/test/transform/resource/before/Helper.java
@@ -0,0 +1,22 @@
+import lombok.experimental.Helper;
+
+class HelperTest {
+ {
+ final int z = 5;
+ if (Boolean.TRUE) {
+ @Helper class H1 {
+ void foo(int x) {
+ System.out.println("Hello, " + (x + z));
+ }
+ }
+
+ foo(10);
+
+ @Helper class H2 {
+ void bar() {
+ foo(12);
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/InnerClass.java b/test/transform/resource/before/InnerClass.java
new file mode 100644
index 00000000..ba020686
--- /dev/null
+++ b/test/transform/resource/before/InnerClass.java
@@ -0,0 +1,17 @@
+class A {
+ @lombok.AllArgsConstructor
+ class B {
+ String s;
+ }
+}
+
+class C {
+ @lombok.Value
+ class D {
+ A a;
+
+ A.B test(String s) {
+ return a.new B(s) {};
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/JavadocGenerally.java b/test/transform/resource/before/JavadocGenerally.java
index ee015acf..1df93385 100644
--- a/test/transform/resource/before/JavadocGenerally.java
+++ b/test/transform/resource/before/JavadocGenerally.java
@@ -1,3 +1,4 @@
+// unchanged
/**
* Doc on package
*/
@@ -10,6 +11,9 @@ package testPackage;
class JavadocGenerally {
/**
* Doc on field
+ * <pre>
+ * // code
+ * </pre>
*/
private int someField;
diff --git a/test/transform/resource/before/LoggerJBossLog.java b/test/transform/resource/before/LoggerJBossLog.java
new file mode 100644
index 00000000..fbd88177
--- /dev/null
+++ b/test/transform/resource/before/LoggerJBossLog.java
@@ -0,0 +1,20 @@
+import lombok.extern.jbosslog.JBossLog;
+
+@lombok.extern.jbosslog.JBossLog
+class LoggerJBossLog {
+}
+
+@JBossLog
+class LoggerJBossLogWithImport {
+}
+
+class LoggerJBossLogOuter {
+ @lombok.extern.jbosslog.JBossLog
+ static class Inner {
+
+ }
+}
+
+@JBossLog(topic="DifferentLogger")
+class LoggerJBossLogWithDifferentLoggerName {
+} \ No newline at end of file
diff --git a/test/transform/resource/before/NoArgsConstructorForce.java b/test/transform/resource/before/NoArgsConstructorForce.java
new file mode 100644
index 00000000..48df1a37
--- /dev/null
+++ b/test/transform/resource/before/NoArgsConstructorForce.java
@@ -0,0 +1,8 @@
+import lombok.NoArgsConstructor;
+
+@NoArgsConstructor(force = true)
+public class NoArgsConstructorForce {
+ private final int[] i;
+ private final Object[] o;
+ private final java.util.List<?>[] fullQualifiedList;
+} \ No newline at end of file
diff --git a/test/transform/resource/before/NonNullOnParameterOfDefaultMethod.java b/test/transform/resource/before/NonNullOnParameterOfDefaultMethod.java
new file mode 100644
index 00000000..ab343ef0
--- /dev/null
+++ b/test/transform/resource/before/NonNullOnParameterOfDefaultMethod.java
@@ -0,0 +1,7 @@
+// version 8:
+interface NonNullOnParameterOfDefaultMethod {
+ void test(@lombok.NonNull String arg);
+ default void test2(@lombok.NonNull String arg) {
+ System.out.println(arg);
+ }
+}
diff --git a/test/transform/resource/before/OnXJava7Style.java b/test/transform/resource/before/OnXJava7Style.java
new file mode 100644
index 00000000..6a3c35ff
--- /dev/null
+++ b/test/transform/resource/before/OnXJava7Style.java
@@ -0,0 +1,16 @@
+//version :7
+public class OnXJava7Style {
+ @interface Foo {
+ String value() default "";
+ }
+
+ @interface Bar {
+ String stuff() default "";
+ }
+
+ @lombok.Getter(onMethod=@__(@Foo)) String a;
+ @lombok.Setter(onMethod=@__(@Foo())) String b;
+ @lombok.Setter(onParam=@__(@Foo("a"))) String c;
+ @lombok.Setter(onParam=@__(@Bar(stuff="b"))) String d;
+ @lombok.Getter(onMethod=@__({@Foo(value="c"), @Bar(stuff="d")})) String e;
+}
diff --git a/test/transform/resource/before/OnXJava7StyleOn8.java b/test/transform/resource/before/OnXJava7StyleOn8.java
new file mode 100644
index 00000000..582fe6ce
--- /dev/null
+++ b/test/transform/resource/before/OnXJava7StyleOn8.java
@@ -0,0 +1,18 @@
+//platform ecj
+//version 8:
+
+public class OnXJava7StyleOn8 {
+ @interface Foo {
+ String value() default "";
+ }
+
+ @interface Bar {
+ String stuff() default "";
+ }
+
+ @lombok.Getter(onMethod=@__(@Foo)) String a;
+ @lombok.Setter(onMethod=@__(@Foo())) String b;
+ @lombok.Setter(onParam=@__(@Foo("a"))) String c;
+ @lombok.Setter(onParam=@__(@Bar(stuff="b"))) String d;
+ @lombok.Getter(onMethod=@__({@Foo(value="c"), @Bar(stuff="d")})) String e;
+}
diff --git a/test/transform/resource/before/OnXJava8Style.java b/test/transform/resource/before/OnXJava8Style.java
new file mode 100644
index 00000000..ffb91727
--- /dev/null
+++ b/test/transform/resource/before/OnXJava8Style.java
@@ -0,0 +1,16 @@
+//version 8:
+public class OnXJava8Style {
+ @interface Foo {
+ String value() default "";
+ }
+
+ @interface Bar {
+ String stuff() default "";
+ }
+
+ @lombok.Getter(onMethod_=@Foo) String a;
+ @lombok.Setter(onMethod_=@Foo()) String b;
+ @lombok.Setter(onParam_=@Foo("a")) String c;
+ @lombok.Setter(onParam_=@Bar(stuff="b")) String d;
+ @lombok.Getter(onMethod_={@Foo(value="c"), @Bar(stuff="d")}) String e;
+}
diff --git a/test/transform/resource/before/OnXJava8StyleOn7.java b/test/transform/resource/before/OnXJava8StyleOn7.java
new file mode 100644
index 00000000..c006e468
--- /dev/null
+++ b/test/transform/resource/before/OnXJava8StyleOn7.java
@@ -0,0 +1,18 @@
+//platform ecj
+//version :7
+
+public class OnXJava8StyleOn7 {
+ @interface Foo {
+ String value() default "";
+ }
+
+ @interface Bar {
+ String stuff() default "";
+ }
+
+ @lombok.Getter(onMethod_=@Foo) String a;
+ @lombok.Setter(onMethod_=@Foo()) String b;
+ @lombok.Setter(onParam_=@Foo("a")) String c;
+ @lombok.Setter(onParam_=@Bar(stuff="b")) String d;
+ @lombok.Getter(onMethod_={@Foo(value="c"), @Bar(stuff="d")}) String e;
+}
diff --git a/test/transform/resource/before/TestOperators.java b/test/transform/resource/before/TestOperators.java
index 566bedfc..de384122 100644
--- a/test/transform/resource/before/TestOperators.java
+++ b/test/transform/resource/before/TestOperators.java
@@ -1,3 +1,4 @@
+// unchanged
class TestOperators {
int x = 10;
public void test() {
diff --git a/test/transform/resource/before/TrickyTypeResolution2.java b/test/transform/resource/before/TrickyTypeResolution2.java
index 00f2ac39..6dfddee0 100644
--- a/test/transform/resource/before/TrickyTypeResolution2.java
+++ b/test/transform/resource/before/TrickyTypeResolution2.java
@@ -1,3 +1,4 @@
+// unchanged
import lombok.*;
class DoNothingDueToTopLevel {
void test() {
diff --git a/test/transform/resource/before/UtilityClass.java b/test/transform/resource/before/UtilityClass.java
new file mode 100644
index 00000000..016a166e
--- /dev/null
+++ b/test/transform/resource/before/UtilityClass.java
@@ -0,0 +1,37 @@
+@lombok.experimental.UtilityClass
+class UtilityClass {
+ private long someField = System.currentTimeMillis();
+
+ void someMethod() {
+ System.out.println();
+ }
+
+ protected class InnerClass {
+ private String innerInnerMember;
+ }
+}
+
+class UtilityInner {
+ static class InnerInner {
+ @lombok.experimental.UtilityClass
+ class InnerInnerInner {
+ int member;
+ }
+ }
+
+ enum UtilityInsideEnum {
+ FOO, BAR;
+
+ @lombok.experimental.UtilityClass
+ class InsideEnum {
+ int member;
+ }
+ }
+
+ interface UtilityInsideInterface {
+ @lombok.experimental.UtilityClass
+ class InsideInterface {
+ int member;
+ }
+ }
+}
diff --git a/test/transform/resource/before/UtilityClassErrors.java b/test/transform/resource/before/UtilityClassErrors.java
new file mode 100644
index 00000000..d750e2bd
--- /dev/null
+++ b/test/transform/resource/before/UtilityClassErrors.java
@@ -0,0 +1,22 @@
+@lombok.experimental.UtilityClass
+class UtilityClassErrors1 {
+ private String someField;
+ protected UtilityClassErrors1() {
+ }
+ void method() {
+ @lombok.experimental.UtilityClass
+ class MethodLocalClass {
+ }
+ }
+}
+@lombok.experimental.UtilityClass
+enum UtilityClassErrors2 {
+}
+class UtilityClassErrors3 {
+ class NonStaticInner {
+ @lombok.experimental.UtilityClass
+ class ThisShouldFail {
+ private String member;
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/ValAnonymousSubclassWithGenerics.java b/test/transform/resource/before/ValAnonymousSubclassWithGenerics.java
index 49fc86e0..c0f8157a 100644
--- a/test/transform/resource/before/ValAnonymousSubclassWithGenerics.java
+++ b/test/transform/resource/before/ValAnonymousSubclassWithGenerics.java
@@ -1,4 +1,4 @@
-// ignore
+// issue 205: val inside anonymous inner classes is a bit tricky in javac, this test ensures we don't break it.
import java.util.*;
import lombok.val;
diff --git a/test/transform/resource/before/ValErrors.java b/test/transform/resource/before/ValErrors.java
index 96181638..87383719 100644
--- a/test/transform/resource/before/ValErrors.java
+++ b/test/transform/resource/before/ValErrors.java
@@ -1,3 +1,4 @@
+// unchanged
import lombok.val;
public class ValErrors {
diff --git a/test/transform/resource/before/ValFinal.java b/test/transform/resource/before/ValFinal.java
new file mode 100644
index 00000000..3c5af366
--- /dev/null
+++ b/test/transform/resource/before/ValFinal.java
@@ -0,0 +1,6 @@
+import lombok.val;
+public class ValFinal {
+ public void test() {
+ final val x = 10;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/ValInBasicFor.java b/test/transform/resource/before/ValInBasicFor.java
index 1f132b8f..a109bcd3 100644
--- a/test/transform/resource/before/ValInBasicFor.java
+++ b/test/transform/resource/before/ValInBasicFor.java
@@ -1,3 +1,4 @@
+// unchanged
import lombok.val;
public class ValInBasicFor {
diff --git a/test/transform/resource/before/ValInLambda.java b/test/transform/resource/before/ValInLambda.java
new file mode 100644
index 00000000..2c2a5942
--- /dev/null
+++ b/test/transform/resource/before/ValInLambda.java
@@ -0,0 +1,21 @@
+// version 8:
+
+import lombok.val;
+
+class ValInLambda {
+ Runnable foo = (Runnable) () -> {
+ val i = 1;
+ };
+
+ public void easyLambda() {
+ Runnable foo = (Runnable) () -> {
+ val i = 1;
+ };
+ }
+
+ public void easyIntersectionLambda() {
+ Runnable foo = (Runnable) () -> {
+ val i = 1;
+ };
+ }
+}
diff --git a/test/transform/resource/before/ValLambda.java b/test/transform/resource/before/ValLambda.java
index ed843ed7..51c4fba1 100644
--- a/test/transform/resource/before/ValLambda.java
+++ b/test/transform/resource/before/ValLambda.java
@@ -14,7 +14,7 @@ class ValLambda {
}
// public void castLubLambda() {
-// Runnable foo = (Runnable)((System.currentTimeMillis() > 0) ? ()-> {} : System.out::println);
-// lombok.val foo = (Runnable)((System.currentTimeMillis() > 0) ? ()-> {} : System.out::println);
+// Runnable foo = (Runnable) ((System.currentTimeMillis() > 0) ? () -> {} : System.out::println);
+// lombok.val foo = (Runnable) ((System.currentTimeMillis() > 0) ? () -> {} : System.out::println);
// }
}
diff --git a/test/transform/resource/before/ValNullInit.java b/test/transform/resource/before/ValNullInit.java
new file mode 100644
index 00000000..649bc0cd
--- /dev/null
+++ b/test/transform/resource/before/ValNullInit.java
@@ -0,0 +1,7 @@
+import lombok.val;
+
+class ValNullInit {
+ void method() {
+ val x = null;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/ValWithLocalClasses.java b/test/transform/resource/before/ValWithLocalClasses.java
new file mode 100644
index 00000000..572a1e7d
--- /dev/null
+++ b/test/transform/resource/before/ValWithLocalClasses.java
@@ -0,0 +1,12 @@
+//issue 694: In javac, resolving the RHS (which is what val does) can cause an entire class to be resolved, breaking all usage of val inside that class. This tests that we handle that better.
+class ValWithLocalClasses1 {
+ {
+ lombok.val f2 = new ValWithLocalClasses2() {};
+ }
+}
+
+class ValWithLocalClasses2 {
+ {
+ lombok.val f3 = 0;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/ValueCallSuper.java b/test/transform/resource/before/ValueCallSuper.java
new file mode 100644
index 00000000..e236b404
--- /dev/null
+++ b/test/transform/resource/before/ValueCallSuper.java
@@ -0,0 +1,7 @@
+//CONF: lombok.equalsAndHashCode.callSuper = call
+
+class ValueParent {
+}
+@lombok.Value
+class ValueCallSuper extends ValueParent {
+}
diff --git a/test/transform/resource/before/ValueExperimental.java b/test/transform/resource/before/ValueExperimental.java
deleted file mode 100644
index 6bae26a0..00000000
--- a/test/transform/resource/before/ValueExperimental.java
+++ /dev/null
@@ -1,9 +0,0 @@
-import lombok.experimental.Value;
-
-@Value
-class ValueExperimental1 {
-}
-
-@lombok.experimental.Value
-class ValueExperimental2 {
-} \ No newline at end of file
diff --git a/test/transform/resource/before/ValueExperimentalStarImport.java b/test/transform/resource/before/ValueExperimentalStarImport.java
deleted file mode 100644
index 5f18cffe..00000000
--- a/test/transform/resource/before/ValueExperimentalStarImport.java
+++ /dev/null
@@ -1,5 +0,0 @@
-import lombok.experimental.*;
-
-@Value
-class ValueExperimentalStarImport {
-} \ No newline at end of file
diff --git a/test/transform/resource/before/ValueStaticField.java b/test/transform/resource/before/ValueStaticField.java
new file mode 100644
index 00000000..f731758a
--- /dev/null
+++ b/test/transform/resource/before/ValueStaticField.java
@@ -0,0 +1,5 @@
+import lombok.Value;
+@Value class ValueStaticField {
+ static int x;
+ static String PASSWORD = "Ken sent me";
+}
diff --git a/test/transform/resource/before/VarComplex.java b/test/transform/resource/before/VarComplex.java
new file mode 100644
index 00000000..c93e177a
--- /dev/null
+++ b/test/transform/resource/before/VarComplex.java
@@ -0,0 +1,22 @@
+import lombok.var;
+
+public class VarComplex {
+ private String field = "";
+ private static final int CONSTANT = 20;
+
+ public void testComplex() {
+ var shouldBeCharArray = field.toCharArray();
+ var shouldBeInt = CONSTANT;
+ var lock = new Object();
+ synchronized (lock) {
+ var field = 20; //Shadowing
+ var inner = 10;
+ switch (field) {
+ case 5:
+ var shouldBeCharArray2 = shouldBeCharArray;
+ var innerInner = inner;
+ }
+ }
+ var shouldBeString = field; //Unshadowing
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarInFor.java b/test/transform/resource/before/VarInFor.java
new file mode 100644
index 00000000..7f7bb7a7
--- /dev/null
+++ b/test/transform/resource/before/VarInFor.java
@@ -0,0 +1,11 @@
+import lombok.var;
+
+public class VarInFor {
+ public void enhancedFor() {
+ int[] list = new int[] {1, 2};
+ for (var shouldBeInt : list) {
+ System.out.println(shouldBeInt);
+ var shouldBeInt2 = shouldBeInt;
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarInForOld.java b/test/transform/resource/before/VarInForOld.java
new file mode 100644
index 00000000..99e83b57
--- /dev/null
+++ b/test/transform/resource/before/VarInForOld.java
@@ -0,0 +1,9 @@
+import lombok.var;
+
+public class VarInForOld {
+ public void oldFor() {
+ for (var i = 0; i < 100; ++i) {
+ System.out.println(i);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarInForOldMulti.java b/test/transform/resource/before/VarInForOldMulti.java
new file mode 100644
index 00000000..e2ea9682
--- /dev/null
+++ b/test/transform/resource/before/VarInForOldMulti.java
@@ -0,0 +1,10 @@
+//skip compare contents
+import lombok.var;
+
+public class VarInForOldMulti {
+ public void oldForMulti() {
+ for (var i = 0, j = "Hey"; i < 100; ++i) {
+ System.out.println(i);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarModifier.java b/test/transform/resource/before/VarModifier.java
new file mode 100644
index 00000000..5c68caa7
--- /dev/null
+++ b/test/transform/resource/before/VarModifier.java
@@ -0,0 +1,10 @@
+import lombok.experimental.var;
+
+public class VarModifier {
+ private String field = "";
+
+ public void testComplex() {
+ final var shouldBeFinalCharArray = field.toCharArray();
+ var shouldBeCharArray = field.toCharArray();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarNullInit.java b/test/transform/resource/before/VarNullInit.java
new file mode 100644
index 00000000..f9bb53a3
--- /dev/null
+++ b/test/transform/resource/before/VarNullInit.java
@@ -0,0 +1,7 @@
+import lombok.var;
+
+public class VarNullInit {
+ void method() {
+ var x = null;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarWarning.java b/test/transform/resource/before/VarWarning.java
new file mode 100644
index 00000000..90464d30
--- /dev/null
+++ b/test/transform/resource/before/VarWarning.java
@@ -0,0 +1,9 @@
+//CONF: lombok.var.flagUsage = WARNING
+import lombok.var;
+
+public class VarWarning {
+ public void isOkay() {
+ var x = "Warning";
+ x.toLowerCase();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/WithInnerAnnotation.java b/test/transform/resource/before/WithInnerAnnotation.java
index a8decfeb..dca1f269 100644
--- a/test/transform/resource/before/WithInnerAnnotation.java
+++ b/test/transform/resource/before/WithInnerAnnotation.java
@@ -1,3 +1,4 @@
+// unchanged
class WithInnerAnnotation {
@interface Inner {
int bar() default 42;
diff --git a/test/transform/resource/before/WitherWithAbstract.java b/test/transform/resource/before/WitherWithAbstract.java
new file mode 100644
index 00000000..acc9094b
--- /dev/null
+++ b/test/transform/resource/before/WitherWithAbstract.java
@@ -0,0 +1,3 @@
+abstract class WitherWithAbstract {
+ @lombok.experimental.Wither String foo;
+} \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/BuilderDefaultsWarnings.java.messages b/test/transform/resource/messages-delombok/BuilderDefaultsWarnings.java.messages
new file mode 100644
index 00000000..694511f8
--- /dev/null
+++ b/test/transform/resource/messages-delombok/BuilderDefaultsWarnings.java.messages
@@ -0,0 +1,4 @@
+13 @Builder.Default requires @Builder on the class for it to mean anything.
+6 @Builder will ignore the initializing expression entirely. If you want the initializing expression to serve as default, add @Builder.Default. If it is not supposed to be settable during building, make the field final.
+8 @Builder.Default requires an initializing expression (' = something;').
+9 @Builder.Default and @Singular cannot be mixed.
diff --git a/test/transform/resource/messages-delombok/BuilderSingularNoAuto.java.messages b/test/transform/resource/messages-delombok/BuilderSingularNoAuto.java.messages
new file mode 100644
index 00000000..8719789b
--- /dev/null
+++ b/test/transform/resource/messages-delombok/BuilderSingularNoAuto.java.messages
@@ -0,0 +1,2 @@
+8 The singular must be specified explicitly (e.g. @Singular("task")) because auto singularization is disabled.
+10 The singular must be specified explicitly (e.g. @Singular("task")) because auto singularization is disabled.
diff --git a/test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages b/test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages
index d3119bd6..d8c064a0 100644
--- a/test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages
+++ b/test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages
@@ -1 +1 @@
-4 Not generating equals: One of equals or hashCode exists. You should either write both of these or none of these (in the latter case, lombok generates them).
+5 Not generating equals: One of equals or hashCode exists. You should either write both of these or none of these (in the latter case, lombok generates them).
diff --git a/test/transform/resource/messages-delombok/GetterLazyTransient.java.messages b/test/transform/resource/messages-delombok/GetterLazyTransient.java.messages
new file mode 100644
index 00000000..8c1873eb
--- /dev/null
+++ b/test/transform/resource/messages-delombok/GetterLazyTransient.java.messages
@@ -0,0 +1 @@
+5 'lazy' is not supported on transient fields. \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages b/test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages
index 53a9b9ad..3386b565 100644
--- a/test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages
+++ b/test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages
@@ -1,4 +1,4 @@
-2 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation}))
-3 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation}))
-4 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation}))
-5 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation}))
+3 The correct format is
+4 The correct format is
+5 The correct format is
+6 The correct format is
diff --git a/test/transform/resource/messages-delombok/Helper.java.messages b/test/transform/resource/messages-delombok/Helper.java.messages
new file mode 100644
index 00000000..bf780b03
--- /dev/null
+++ b/test/transform/resource/messages-delombok/Helper.java.messages
@@ -0,0 +1 @@
+15 No methods of this helper class are ever used. \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/NonNullOnParameterAbstract.java.messages b/test/transform/resource/messages-delombok/NonNullOnParameterAbstract.java.messages
deleted file mode 100644
index fd5bffd5..00000000
--- a/test/transform/resource/messages-delombok/NonNullOnParameterAbstract.java.messages
+++ /dev/null
@@ -1 +0,0 @@
-6 @NonNull is meaningless on a parameter of an abstract method.
diff --git a/test/transform/resource/messages-delombok/UtilityClassErrors.java.messages b/test/transform/resource/messages-delombok/UtilityClassErrors.java.messages
new file mode 100644
index 00000000..4afa12ec
--- /dev/null
+++ b/test/transform/resource/messages-delombok/UtilityClassErrors.java.messages
@@ -0,0 +1,4 @@
+4 @UtilityClasses cannot have declared constructors.
+7 @UtilityClass cannot be placed on a method local or anonymous inner class, or any class nested in such a class.
+12 @UtilityClass is only supported on a class (can't be an interface, enum, or annotation).
+17 @UtilityClass automatically makes the class static, however, this class cannot be made static. \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/ValErrors.java.messages b/test/transform/resource/messages-delombok/ValErrors.java.messages
index bb33c6de..0777143b 100644
--- a/test/transform/resource/messages-delombok/ValErrors.java.messages
+++ b/test/transform/resource/messages-delombok/ValErrors.java.messages
@@ -1,2 +1,2 @@
-5 Cannot use 'val' here because initializer expression does not have a representable type: Type cannot be resolved
-9 'val' is not compatible with array initializer expressions. Use the full form (new int[] { ... } instead of just { ... })
+6 Cannot use 'val' here because initializer expression does not have a representable type: Type cannot be resolved
+10 'val' is not compatible with array initializer expressions. Use the full form (new int[] { ... } instead of just { ... })
diff --git a/test/transform/resource/messages-delombok/ValInBasicFor.java.messages b/test/transform/resource/messages-delombok/ValInBasicFor.java.messages
index 7166b550..60f8f70c 100644
--- a/test/transform/resource/messages-delombok/ValInBasicFor.java.messages
+++ b/test/transform/resource/messages-delombok/ValInBasicFor.java.messages
@@ -1 +1 @@
-6 'val' is not allowed in old-style for loops
+7 'val' is not allowed in old-style for loops
diff --git a/test/transform/resource/messages-delombok/VarInForOldMulti.java.messages b/test/transform/resource/messages-delombok/VarInForOldMulti.java.messages
new file mode 100644
index 00000000..f65fe823
--- /dev/null
+++ b/test/transform/resource/messages-delombok/VarInForOldMulti.java.messages
@@ -0,0 +1 @@
+6 'var' is not allowed in old-style for loops if there is more than 1 initializer
diff --git a/test/transform/resource/messages-delombok/VarNullInit.java.messages b/test/transform/resource/messages-delombok/VarNullInit.java.messages
new file mode 100644
index 00000000..5a2a6ae1
--- /dev/null
+++ b/test/transform/resource/messages-delombok/VarNullInit.java.messages
@@ -0,0 +1 @@
+5 variable initializer is 'null' \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/VarWarning.java.messages b/test/transform/resource/messages-delombok/VarWarning.java.messages
new file mode 100644
index 00000000..886e98f4
--- /dev/null
+++ b/test/transform/resource/messages-delombok/VarWarning.java.messages
@@ -0,0 +1 @@
+6 Use of var is flagged according to lombok configuration \ No newline at end of file
diff --git a/test/transform/resource/messages-ecj/BuilderDefaultsWarnings.java.messages b/test/transform/resource/messages-ecj/BuilderDefaultsWarnings.java.messages
new file mode 100644
index 00000000..f64aa5d5
--- /dev/null
+++ b/test/transform/resource/messages-ecj/BuilderDefaultsWarnings.java.messages
@@ -0,0 +1,5 @@
+6 @Builder will ignore the initializing expression entirely. If you want the initializing expression to serve as default, add @Builder.Default. If it is not supposed to be settable during building, make the field final.
+8 @Builder.Default requires an initializing expression (' = something;').
+9 @Builder.Default and @Singular cannot be mixed.
+13 @Builder.Default requires @Builder on the class for it to mean anything.
+
diff --git a/test/transform/resource/messages-ecj/BuilderSingularNoAuto.java.messages b/test/transform/resource/messages-ecj/BuilderSingularNoAuto.java.messages
new file mode 100644
index 00000000..8719789b
--- /dev/null
+++ b/test/transform/resource/messages-ecj/BuilderSingularNoAuto.java.messages
@@ -0,0 +1,2 @@
+8 The singular must be specified explicitly (e.g. @Singular("task")) because auto singularization is disabled.
+10 The singular must be specified explicitly (e.g. @Singular("task")) because auto singularization is disabled.
diff --git a/test/transform/resource/messages-ecj/EqualsAndHashCodeWithSomeExistingMethods.java.messages b/test/transform/resource/messages-ecj/EqualsAndHashCodeWithSomeExistingMethods.java.messages
index d3119bd6..d8c064a0 100644
--- a/test/transform/resource/messages-ecj/EqualsAndHashCodeWithSomeExistingMethods.java.messages
+++ b/test/transform/resource/messages-ecj/EqualsAndHashCodeWithSomeExistingMethods.java.messages
@@ -1 +1 @@
-4 Not generating equals: One of equals or hashCode exists. You should either write both of these or none of these (in the latter case, lombok generates them).
+5 Not generating equals: One of equals or hashCode exists. You should either write both of these or none of these (in the latter case, lombok generates them).
diff --git a/test/transform/resource/messages-ecj/GetterLazyTransient.java.messages b/test/transform/resource/messages-ecj/GetterLazyTransient.java.messages
new file mode 100644
index 00000000..8c1873eb
--- /dev/null
+++ b/test/transform/resource/messages-ecj/GetterLazyTransient.java.messages
@@ -0,0 +1 @@
+5 'lazy' is not supported on transient fields. \ No newline at end of file
diff --git a/test/transform/resource/messages-ecj/GetterOnMethodErrors2.java.messages b/test/transform/resource/messages-ecj/GetterOnMethodErrors2.java.messages
index 53a9b9ad..3386b565 100644
--- a/test/transform/resource/messages-ecj/GetterOnMethodErrors2.java.messages
+++ b/test/transform/resource/messages-ecj/GetterOnMethodErrors2.java.messages
@@ -1,4 +1,4 @@
-2 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation}))
-3 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation}))
-4 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation}))
-5 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation}))
+3 The correct format is
+4 The correct format is
+5 The correct format is
+6 The correct format is
diff --git a/test/transform/resource/messages-ecj/Helper.java.messages b/test/transform/resource/messages-ecj/Helper.java.messages
new file mode 100644
index 00000000..4193dfe2
--- /dev/null
+++ b/test/transform/resource/messages-ecj/Helper.java.messages
@@ -0,0 +1 @@
+15 No methods of this helper class are ever used.
diff --git a/test/transform/resource/messages-ecj/NonNullOnParameterAbstract.java.messages b/test/transform/resource/messages-ecj/NonNullOnParameterAbstract.java.messages
deleted file mode 100644
index 8eb312ef..00000000
--- a/test/transform/resource/messages-ecj/NonNullOnParameterAbstract.java.messages
+++ /dev/null
@@ -1 +0,0 @@
-6 @NonNull is meaningless on a parameter of an abstract method. \ No newline at end of file
diff --git a/test/transform/resource/messages-ecj/UtilityClassErrors.java.messages b/test/transform/resource/messages-ecj/UtilityClassErrors.java.messages
new file mode 100644
index 00000000..15c9b10f
--- /dev/null
+++ b/test/transform/resource/messages-ecj/UtilityClassErrors.java.messages
@@ -0,0 +1,4 @@
+4 @UtilityClasses cannot have declared constructors.
+7 @UtilityClass cannot be placed on a method local or anonymous inner class, or any class nested in such a class.
+12 @UtilityClass is only supported on a class (can't be an interface, enum, or annotation)
+17 @UtilityClass automatically makes the class static, however, this class cannot be made static. \ No newline at end of file
diff --git a/test/transform/resource/messages-ecj/ValAnonymousSubclassWithGenerics.java.messages b/test/transform/resource/messages-ecj/ValAnonymousSubclassWithGenerics.java.messages
new file mode 100644
index 00000000..37f87639
--- /dev/null
+++ b/test/transform/resource/messages-ecj/ValAnonymousSubclassWithGenerics.java.messages
@@ -0,0 +1 @@
+17 The serializable class does not declare a static final serialVersionUID field of type long \ No newline at end of file
diff --git a/test/transform/resource/messages-ecj/ValErrors.java.messages b/test/transform/resource/messages-ecj/ValErrors.java.messages
index 6d53ddd6..c4c76901 100644
--- a/test/transform/resource/messages-ecj/ValErrors.java.messages
+++ b/test/transform/resource/messages-ecj/ValErrors.java.messages
@@ -1,2 +1,2 @@
-5 d cannot be resolved to a variable
-9 'val' is not compatible with array initializer expressions. Use the full form (new int[] { ... } instead of just { ... })
+6 d cannot be resolved to a variable
+10 'val' is not compatible with array initializer expressions. Use the full form (new int[] { ... } instead of just { ... })
diff --git a/test/transform/resource/messages-ecj/ValInBasicFor.java.messages b/test/transform/resource/messages-ecj/ValInBasicFor.java.messages
index c75e20f2..b32eabe4 100644
--- a/test/transform/resource/messages-ecj/ValInBasicFor.java.messages
+++ b/test/transform/resource/messages-ecj/ValInBasicFor.java.messages
@@ -1,2 +1,2 @@
-6 'val' is not allowed in old-style for loops
-6 Type mismatch: cannot convert from int to val
+7 'val' is not allowed in old-style for loops
+7 Type mismatch: cannot convert from int to val
diff --git a/test/transform/resource/messages-ecj/ValInTryWithResources.java.messages b/test/transform/resource/messages-ecj/ValInTryWithResources.java.messages
new file mode 100644
index 00000000..9d0d7a6e
--- /dev/null
+++ b/test/transform/resource/messages-ecj/ValInTryWithResources.java.messages
@@ -0,0 +1 @@
+OPTIONAL 8 Resource leak: 'i' is never closed
diff --git a/test/transform/resource/messages-ecj/ValueExperimental.java.messages b/test/transform/resource/messages-ecj/ValueExperimental.java.messages
deleted file mode 100644
index e454a878..00000000
--- a/test/transform/resource/messages-ecj/ValueExperimental.java.messages
+++ /dev/null
@@ -1 +0,0 @@
-1 The type Value is deprecated \ No newline at end of file
diff --git a/test/transform/resource/messages-ecj/VarInForOldMulti.java.messages b/test/transform/resource/messages-ecj/VarInForOldMulti.java.messages
new file mode 100644
index 00000000..0bfd6e65
--- /dev/null
+++ b/test/transform/resource/messages-ecj/VarInForOldMulti.java.messages
@@ -0,0 +1 @@
+6 'var' is not allowed in old-style for loops if there is more than 1 initializer \ No newline at end of file
diff --git a/test/transform/resource/messages-ecj/VarModifier.java.messages b/test/transform/resource/messages-ecj/VarModifier.java.messages
new file mode 100644
index 00000000..051d1ad7
--- /dev/null
+++ b/test/transform/resource/messages-ecj/VarModifier.java.messages
@@ -0,0 +1,3 @@
+1 The type var is deprecated
+7 The type var is deprecated
+8 The type var is deprecated
diff --git a/test/transform/resource/messages-ecj/VarNullInit.java.messages b/test/transform/resource/messages-ecj/VarNullInit.java.messages
new file mode 100644
index 00000000..5a2a6ae1
--- /dev/null
+++ b/test/transform/resource/messages-ecj/VarNullInit.java.messages
@@ -0,0 +1 @@
+5 variable initializer is 'null' \ No newline at end of file
diff --git a/test/transform/resource/messages-ecj/VarWarning.java.messages b/test/transform/resource/messages-ecj/VarWarning.java.messages
new file mode 100644
index 00000000..25096b84
--- /dev/null
+++ b/test/transform/resource/messages-ecj/VarWarning.java.messages
@@ -0,0 +1 @@
+6 Use of var is flagged according to lombok configuration. \ No newline at end of file
diff --git a/test/transform/resource/messages-idempotent/NonNullOnParameterAbstract.java.messages b/test/transform/resource/messages-idempotent/NonNullOnParameterAbstract.java.messages
deleted file mode 100644
index 0d9fcfdc..00000000
--- a/test/transform/resource/messages-idempotent/NonNullOnParameterAbstract.java.messages
+++ /dev/null
@@ -1 +0,0 @@
-9 @NonNull is meaningless on a parameter of an abstract method. \ No newline at end of file
diff --git a/test/transform/resource/messages-idempotent/NonNullPlain.java.messages b/test/transform/resource/messages-idempotent/NonNullPlain.java.messages
index 1d8c4d9c..3a3a052d 100644
--- a/test/transform/resource/messages-idempotent/NonNullPlain.java.messages
+++ b/test/transform/resource/messages-idempotent/NonNullPlain.java.messages
@@ -1,3 +1,3 @@
3 @NonNull is meaningless on a primitive.
-15 @NonNull is meaningless on a primitive.
-37 @NonNull is meaningless on a primitive. \ No newline at end of file
+14 @NonNull is meaningless on a primitive.
+36 @NonNull is meaningless on a primitive.
diff --git a/test/transform/src/lombok/transform/TestLombokFilesIdempotent.java b/test/transform/src/lombok/transform/TestLombokFilesIdempotent.java
index d2909943..754a4237 100644
--- a/test/transform/src/lombok/transform/TestLombokFilesIdempotent.java
+++ b/test/transform/src/lombok/transform/TestLombokFilesIdempotent.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2009-2010 The Project Lombok Authors.
+ * Copyright (C) 2009-2015 The Project Lombok Authors.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -53,4 +53,9 @@ public class TestLombokFilesIdempotent extends DirectoryRunner.TestParams {
public boolean printErrors() {
return true;
}
+
+ @Override
+ public boolean expectChanges() {
+ return false;
+ }
}
diff --git a/test/transform/src/lombok/transform/TestSourceFiles.java b/test/transform/src/lombok/transform/TestSourceFiles.java
index c3ac0a68..17be133e 100644
--- a/test/transform/src/lombok/transform/TestSourceFiles.java
+++ b/test/transform/src/lombok/transform/TestSourceFiles.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2009-2010 The Project Lombok Authors.
+ * Copyright (C) 2009-2015 The Project Lombok Authors.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -53,4 +53,9 @@ public class TestSourceFiles extends DirectoryRunner.TestParams {
public File getMessagesDirectory() {
return null;
}
+
+ @Override
+ public boolean expectChanges() {
+ return false;
+ }
}
diff --git a/test/transform/src/lombok/transform/TestWithDelombok.java b/test/transform/src/lombok/transform/TestWithDelombok.java
index bd8d9d09..9f4cf94a 100644
--- a/test/transform/src/lombok/transform/TestWithDelombok.java
+++ b/test/transform/src/lombok/transform/TestWithDelombok.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2009-2010 The Project Lombok Authors.
+ * Copyright (C) 2009-2015 The Project Lombok Authors.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -53,4 +53,9 @@ public class TestWithDelombok extends DirectoryRunner.TestParams {
public File getMessagesDirectory() {
return new File("test/transform/resource/messages-delombok");
}
+
+ @Override
+ public boolean expectChanges() {
+ return true;
+ }
}
diff --git a/test/transform/src/lombok/transform/TestWithEcj.java b/test/transform/src/lombok/transform/TestWithEcj.java
index 0a4057dd..3df8dc8b 100644
--- a/test/transform/src/lombok/transform/TestWithEcj.java
+++ b/test/transform/src/lombok/transform/TestWithEcj.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2009-2012 The Project Lombok Authors.
+ * Copyright (C) 2009-2015 The Project Lombok Authors.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -57,4 +57,9 @@ public class TestWithEcj extends DirectoryRunner.TestParams {
public File getMessagesDirectory() {
return new File("test/transform/resource/messages-ecj");
}
+
+ @Override
+ public boolean expectChanges() {
+ return true;
+ }
}