Commit Graph

313 Commits

Author SHA1 Message Date
Reinier Zwitserloot 3d432c38d0 code impl of FieldNameConstants rewrite + test updates for it 2018-07-29 16:37:21 +02:00
Reinier Zwitserloot b3771e86f9 gave the tests for issue #1397 (generated constructors take @Builder.Default into account) an update. 2018-07-03 05:42:34 +02:00
Reinier Zwitserloot 7472672f16 [issue #1347] When lombok generates constructors, it should call the @Builder.Default static method instead of initializing to null/0/false. This does that, for ecj. 2018-07-03 05:42:34 +02:00
Reinier Zwitserloot 3987f54b83 [issue #1347] When lombok generates constructors, it should call the @Builder.Default static method instead of initializing to null/0/false. This does that, for javac. 2018-07-03 05:42:34 +02:00
Roel Spilker f241ef8c30 Transient fields should by default be excluded from equals and hashCode. Fixes #1724 2018-06-18 23:56:27 +02:00
Reinier Zwitserloot 5dea27f56f Merge branch 'janrieke-superBuilder' 2018-06-13 23:26:15 +02:00
Reinier Zwitserloot a0b901c3c0 @NonNull now uses a slightly longer exception message. 2018-06-04 23:55:13 +02:00
Roel Spilker a74db7c10c Make extraPrivate opt-in instead of opt-out. Fixes #1708 2018-06-04 23:36:45 +02:00
Reinier Zwitserloot b8e85f5dc7 FieldNameConstants now defaults to having a prefix ‘FIELD_’, which can be configured both on the annotation itself and via a config key. This totally breaks compatibility with the previous lombok release, but, hey, it’s in experimental and it’s been one week. This is better. 2018-06-04 23:36:10 +02:00
Roel Spilker fb5a553014 Do not generate a private no-args constructor if:
- The class has a parent class
- There is an explicit XxxArgsConstructor annotation that would generate
a no-args constructor
Fixes #1703, fixes #1704, fixes #1712
2018-06-04 22:40:24 +02:00
Reinier Zwitserloot 370705e7e1 Fixex #1697: google’s FluentLogger (Flogger) now available as one of lombok’s log annotations. 2018-06-04 22:18:54 +02:00
Jan Rieke e2fc6fa564 SuperBuilder support for abstract classes 2018-06-04 17:52:38 +02:00
Jan Rieke d11263a6c6 support @Builder.Default 2018-06-01 15:57:59 +02:00
Jan Rieke 32bed51fed ecj: generate default constructor for builder classes 2018-05-31 18:01:43 +02:00
Jan Rieke 795e3c8487 Revert "ecj: SuperBuilderBasic test passes (removed superconstructor calls)"
This reverts commit 9ee2491427.
2018-05-31 16:40:08 +02:00
Jan Rieke 7bd60ea6e6 second generics test case 2018-05-31 16:32:14 +02:00
Jan Rieke 664ed48460 javac: delete @SuperBuilder when processing it 2018-05-31 14:53:20 +02:00
Jan Rieke 65b248ec62 fixed expected test results 2018-05-31 14:41:40 +02:00
Jan Rieke 1e87330f18 test case for custom builder method 2018-05-30 22:54:11 +02:00
Jan Rieke 4c5a7cddab code formatting, reordering, rename etc. 2018-05-30 22:38:08 +02:00
Jan Rieke b2f44c3264 ecj: type parameters for methods and constructor param 2018-05-30 13:10:34 +02:00
Jan Rieke 61f0689f6b ecj: copy type parameters to builder class 2018-05-30 11:52:42 +02:00
Roel Spilker 6045c1b8f5 Generate default no-args constructor 2018-05-28 21:54:12 +02:00
Jan Rieke 9ee2491427 ecj: SuperBuilderBasic test passes (removed superconstructor calls) 2018-05-17 21:26:42 +02:00
Jan Rieke 55976fec12 ecj: remaining type args for non-generic class builders 2018-05-17 20:36:40 +02:00
Reinier Zwitserloot 649a7b72bf [new-style include/exclude] added new-style include/exclude support to EqualsAndHashCode. 2018-05-15 00:50:58 +02:00
Reinier Zwitserloot ad21a1573b [annotation based ToString] hey.. we have annotation based ToString now, where you can include/exclude fields by annotating the fields. 2018-05-14 22:03:46 +02:00
Jan Rieke 5d35fe3bfb ecj: method body for self(); type args for BuilderImpl extends clause 2018-05-14 17:59:45 +02:00
Jan Rieke fb401d4887 ecj: setter methods now return self() 2018-05-11 17:19:47 +02:00
Jan Rieke ee51d77dd6 ecj: type params for constructor, abstract builder class, self method 2018-05-11 14:41:38 +02:00
Jan Rieke eec57b8750 added @SuperBuilder test results for ecj 2018-05-04 18:22:32 +02:00
Jan Rieke 9f3e8509f7 no empty lines for expected test result 2018-04-27 16:07:41 +02:00
Jan Rieke 4f5d5b108d fixed javac tests (toString calls super now) 2018-04-27 13:36:08 +02:00
Roel Spilker b081e6c968 Allow onMethod and onParam in @Getter and @Setter if it is put on a type 2018-04-23 23:26:51 +02:00
Reinier Zwitserloot a27826b268 [bugfix] generics on inner classes whose outer type has generics, when the outer type is an interface, caused bugs in ecj. 2018-04-23 22:36:07 +02:00
Reinier Zwitserloot f540335ef9 [Fixes #1656] Lombok would silently do the wrong thing when using references to public static final String fields, instead of actual string literals, there where you can specify strings in lombok annotation parameters, such as @ToString(of = MyClass.CONSTANT_FIELD). We can’t really fix it, but at least now lombok will error when you do that and describe in detail what’s going wrong. 2018-04-17 04:19:37 +02:00
Jan Rieke 9df6555912 added SuperBuilder with generics test case 2018-04-15 23:06:19 +02:00
Jan Rieke 6dd21ad7e0 adjusted expected result of test case 2018-04-14 20:13:59 +02:00
Reinier Zwitserloot b6fb3c03fa [fieldNameConstants] code review, docs, tests, fixup. 2018-04-05 14:22:40 +02:00
Reinier Zwitserloot 3eea3b9589 introduction of @SuperBuilder and a testcase. 2018-04-04 23:26:20 +02:00
Reinier Zwitserloot 6b0b1a6a7b [builderParentClass] test cases 2018-03-29 03:36:29 +02:00
Reinier Zwitserloot 5a5d75a931 tests updated; a few tests were failing because we removed a few things recently, such as value and builder from experimental. 2018-03-20 01:17:54 +01:00
Reinier Zwitserloot c08559b016 [issue #1615] fixes a bug where equals and hashcode would mess up if both the outer and the inner class have generics, the inner is non-static, and you generate equals/hashcode on the inner.
Note that in general this is just broken; do not put non-static inner classes in generics-carrying classes in the first place!
2018-03-20 01:17:35 +01:00
Reinier Zwitserloot 0c48f41aef Added test case for issue #1615: non-static inner classes where both inner and outer have generics fails if inner is annotated with @Data 2018-03-18 14:57:49 +01:00
Roel Spilker 2f1069e48c Keep indentations in javadoc. Fixes #1571 2018-02-07 00:19:24 +01:00
Reinier Zwitserloot 66469e04fe [var] various upgrades to var:
* var is promoted to the main package.
* It is no longer an opt-in thing.
* bug: var (unlike val) is allowed in old-style for loops, but if you multi-init: for (var i = 0, j="Foo";;), you now get an error that you can't do that.
* tests both for the multi-for situation and the new main package variant.
2018-02-07 00:01:22 +01:00
Roel Spilker 209c082530 Update tests for new Builder.Default handling #1547 2018-01-08 22:10:27 +01:00
Roel Spilker d9031506b5 support for @Builder on methods with a generified return type. Fixes #1420 2017-12-12 02:42:14 +01:00
Roel Spilker f2530ab37e handle @Builder.Default on generic fields. Fixes #1527 2017-12-12 01:04:20 +01:00
Reinier Zwitserloot ab8e14736f [JDK9] fixing delombok’s comment integration in JDK9. 2017-12-05 00:00:08 +01:00