aboutsummaryrefslogtreecommitdiff
path: root/website/features
diff options
context:
space:
mode:
authorReinier Zwitserloot <reinier@zwitserloot.com>2010-12-28 16:50:19 +0100
committerReinier Zwitserloot <reinier@zwitserloot.com>2010-12-28 16:51:02 +0100
commit52582dc10ea1b5ea4a1dbb71831a442056354990 (patch)
treeafd0794b7360e5c174a79a54c54a50aacfe31efc /website/features
parentd80139fa8f21b1e6c7fad0a0607986d7b246a06f (diff)
downloadlombok-52582dc10ea1b5ea4a1dbb71831a442056354990.tar.gz
lombok-52582dc10ea1b5ea4a1dbb71831a442056354990.tar.bz2
lombok-52582dc10ea1b5ea4a1dbb71831a442056354990.zip
@ToString, @Getter, and @XArgsConstructor now work on, and are legal on, enums. Docs have been updated.
Behaviour of @XArgsConstructor when its placement makes no sense (i.e. when annotating an interface with them) is no longer 'throw weird errors', but has been brought in line with the others: A nice error message is generated. Fixes issue #175
Diffstat (limited to 'website/features')
-rw-r--r--website/features/Constructor.html3
-rw-r--r--website/features/GetterSetter.html3
-rw-r--r--website/features/ToString.html2
3 files changed, 8 insertions, 0 deletions
diff --git a/website/features/Constructor.html b/website/features/Constructor.html
index 6a7cfd2f..072e46ed 100644
--- a/website/features/Constructor.html
+++ b/website/features/Constructor.html
@@ -68,6 +68,9 @@
The <code>@java.beans.ConstructorProperties</code> annotation is never generated for a constructor with no arguments. This also explains why <code>@NoArgsConstructor</code>
lacks the <code>suppressConstructorProperties</code> annotation method. The <code>@ConstructorProperties</code> annotation is also omitted for private constructors. The
generated static factory methods also do not get <code>@ConstructorProperties</code>, as this annotation can only be added to real constructors.
+ </p><p>
+ <code>@XArgsConstructor</code> can also be used on an enum definition. The generated constructor will always be
+ private, because non-private constructors aren't legal in enums. You don't have to specify <code>AccessLevel.PRIVATE</code>.
</p>
</div>
</div>
diff --git a/website/features/GetterSetter.html b/website/features/GetterSetter.html
index fd4ed17d..8e7a1ede 100644
--- a/website/features/GetterSetter.html
+++ b/website/features/GetterSetter.html
@@ -67,6 +67,9 @@
</p><p>
Using the <code>AccessLevel.NONE</code> access level simply generates nothing. It's useful only in combination with
<a href="Data.html"><code>@Data</code></a> or a class-wide <code>@Getter</code> or <code>@Setter</code>.
+ </p><p>
+ <code>@Getter</code> can also be used on enums. <code>@Setter</code> can't, not for a technical reason, but
+ for a pragmatic one: Setters on enums are an extremely bad idea.
</p>
</div>
</div>
diff --git a/website/features/ToString.html b/website/features/ToString.html
index e350c265..8ac29bb1 100644
--- a/website/features/ToString.html
+++ b/website/features/ToString.html
@@ -62,6 +62,8 @@
</p><p>
If a getter exists for a field to be included, it is called instead of using a direct field reference. This behaviour can be suppressed:<br />
<code>@ToString(doNotUseGetters = true)</code>
+ </p><p>
+ <code>@ToString</code> can also be used on an enum definition.
</p>
</div>
</div>