Back to Lombok

Index

website/templates/features/experimental/index.html

1.18.463.6 KB
Original Source

#import "../../_scaffold.html" as main> <#import "../_features.html" as f> <@main.scaffold title="Experimental"> Get Lombok for Enterprise

<@main.h1 title="Lombok experimental features" />

The Lombok javadoc is available, but we advise these pages.

Experimental features are available in your normal lombok installation, but are not as robustly supported as lombok's main features. In particular, experimental features:

  • Are not tested as well as the core features.
  • Do not get bugs fixed as quickly as core features.
  • May have APIs that will change, possibly drastically if we find a different, better way to solve the same problem.
  • May disappear entirely if the feature is too difficult to support or doesn't bust enough boilerplate.

Features that receive positive community feedback and which seem to produce clean, flexible code will eventually become accepted as a core feature and move out of the experimental package.

<@main.feature title="@Accessors" href="Accessors"> A more fluent API for getters and setters. @main.feature> <@main.feature title="@ExtensionMethod" href="ExtensionMethod"> Annoying API? Fix it yourself: Add new methods to existing types! @main.feature> <@main.feature title="@FieldDefaults" href="FieldDefaults"> New default field modifiers for the 21st century. @main.feature> <@main.feature title="@Delegate" href="Delegate"> Don't lose your composition. @main.feature> <@main.feature title="onMethod= / onConstructor= / onParam=" href="onX"> Sup dawg, we heard you like annotations, so we put annotations in your annotations so you can annotate while you're annotating. @main.feature> <@main.feature title="@UtilityClass" href="UtilityClass"> Utility, metility, wetility! Utility classes for the masses. @main.feature> <@main.feature title="@Helper" href="Helper"> With a little help from my friends... Helper methods for java. @main.feature> <@main.feature title="@FieldNameConstants" href="FieldNameConstants"> Name... that... field! String constants for your field's names. @main.feature> <@main.feature title="@SuperBuilder" href="SuperBuilder"> Bob now knows his ancestors: Builders with fields from superclasses, too. @main.feature> <@main.feature title="@Tolerate" href="Tolerate"> Skip, jump, and forget! Make lombok disregard an existing method or constructor. @main.feature> <@main.feature title="@Jacksonized" href="Jacksonized"> Bob, meet Jackson. Lets make sure you become fast friends. @main.feature> <@main.feature title="@StandardException" href="StandardException"> Standard.. Exceptional? This is not just an oxymoron, it's convenient! @main.feature> <@f.confKeys> lombok.experimental.flagUsage = [warning | error] (default: not set) Lombok will flag any usage of any of the features listed here as a warning or error if configured. @f.confKeys>

Putting the "Ex" in "Experimental": promoted or deleted experimental features.

<@main.feature title="@Value: promoted" href="/features/Value"> @Value has proven its value and has been moved to the main package. @main.feature> <@main.feature title="@Builder: promoted" href="/features/Builder"> @Builder is a solid base to build APIs on, and has been moved to the main package. @main.feature> <@main.feature title="@Wither: renamed to @With, and promoted" href="/features/With"> Immutable 'setters' - methods that create a clone but with one changed field. @main.feature> <@main.feature title="var" href="/features/var"> Modifiable local variables with a type inferred by assigning value. @main.feature>

@main.scaffold>