diff --git a/website/templates/features/experimental/FieldDefaults.html b/website/templates/features/experimental/FieldDefaults.html index c0d3db96..b4b582e9 100644 --- a/website/templates/features/experimental/FieldDefaults.html +++ b/website/templates/features/experimental/FieldDefaults.html @@ -10,14 +10,12 @@ <@f.experimental>
lombok.config entry of lombok.fieldDefaults.defaultPrivate = true (or, analogously, defaultFinal) is enough to modify every source file that is affected by that configuration, even if said source file has absolutely no trace whatsoever of lombok anything inside it. We're not quite sure if this is a good idea. Our current point of view is that this is too much magic, and there is an alternative plan: meta-annotations. Until at least the meta-annotations idea has been explored and discarded, this feature will not be leaving experimental in its current state. Most likely, if it ever does, the lombok.FieldDefaults annotation will be required, though, you may set it via the to be built meta-annotation.
new SomeException(message, null) will initialize
the cause to be no cause, and this cannot be later changed by invoking initCause. However, lombok's
standard exceptions do let you overwrite an explicit no-cause with initCause later.
+
+ A second slight functional difference: Normally, invoking new SomeException(cause), if implemented as super(cause);, will set the message to be equal to the message of the cause. However, lombok does not do this - it leaves the exception as having no message at all. We think inheriting the message is fundamentally wrong - messages are not guaranteed to be sensible in the absence of the context of the exception-type. The cause ought to be listed anywhere where it is relevant; if you are using messages as direct user feedback (which is rare, in the java community), @StandardException can't really help you anyway; the infrastructure of e.g. getLocalizedMessage() is too complicated.