@Target(value={TYPE,PACKAGE,ANNOTATION_TYPE}) @Retention(value=RUNTIME) public @interface BuckStyleValueWithBuilder
RuleArg
naming style.
Value-style objects have all have builders, but do not have "with" methods, "copy" methods.
When using this annotation, it's unnecessary to explicitly use @Value.Immutable.
If the Value.Immutable behavior needs to be customized, you must explicitly set the values set in the defaults here (otherwise a linter will yell at you).