From d11263a6c60008894213a1b465f2b16be3a03468 Mon Sep 17 00:00:00 2001
From: Jan Rieke @SuperBuilder
must extend the @SuperBuilder
of the superclass in order to include those methods.
Furthermore, the generated builder code heavily relies on generics to avoid class casting when using the builder.
@SuperBuilder
generates a private constructor on the class that takes a builder instances as a parameter. This constructor sets the fields of the new instance to the values from the builder.
+
+ @SuperBuilder
is not compatible with @Builder
.
To ensure type-safety, @SuperBuilder
generates two inner builder classes for each annotated class, one abstract and one concrete class named FoobarBuilder
and FoobarBuilderImpl
(where Foobar is the name of the annotated class).
@@ -43,7 +45,7 @@ <@f.confKeys>
lombok.builder.flagUsage
= [warning
| error
] (default: not set)
+ lombok.superBuilder.flagUsage
= [warning
| error
] (default: not set)
@SuperBuilder
as a warning or error if configured.