@Wither is an appropriate name for this feature. How about we call it @ChainSetter ? Should we replace @Wither entirely with a builder class? No, these have two different uses. I'd prefer to use @Builder separately. The @Wither chain setters do not require some sort of execution or building once assembled unlike @Builder. While this isn't necessarily the case that built objects will need execution, the purpose and usage in the builder pattern is clear as is chain setting.
> email to project-lombok+unsubscribe@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project-lombok+unsubscribe@googlegroups.com.
I'm afraid there's no better name, at least there was nothing usable in the length discussion in 2010 (all better sounding names clash with something). It may be me who made the authors accept the name.For me the clear winner is still @Wither. It's an English word with a negative connotation. And Setter is a dog type and Getter is a manga super robot. So what?There were much worse names proposed, e.g., PDS. Funnily enough, the intended meaning (Persistent Data Structure) is missing from the Wikipedia (though it offers things like Partially Deceased Syndrome, Paroxysmal depolarizing shift and Particularly Dangerous Situation).On Tuesday, May 9, 2017 at 2:14:26 PM UTC+2, Michael Hradek wrote:Should we replace @Wither entirely with a builder class? No, these have two different uses. I'd prefer to use @Builder separately. The @Wither chain setters do not require some sort of execution or building once assembled unlike @Builder. While this isn't necessarily the case that built objects will need execution, the purpose and usage in the builder pattern is clear as is chain setting.
The introduction of @Builder(toBuilder=true) has made @Wither easily replaceable as you can write x.toBuilder().a(1).build() instead of x.withA(1). However, the latter is twice as fast, much more readable, and avoids garbage. The former is better when many properties get changed at once.
> email to project...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/CAOu%2Baf%3DYfL7be0aGNK1ZHfHeGQ%2Bc-PFNQv%2BKZJTAk12yRbP2Vw%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/CAJ0GajTKCvGTLng8M3z98n89JQ3Ju6YNgxc69B%2BV3s87Ge%3D2MQ%40mail.gmail.com.
> To unsubscribe from this group and stop receiving emails from it, send an email to project-lombok+unsubscribe@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/60464964-684a-4b92-abce-c955e691698e%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project-lombok+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/CAOu%2Baf%3DYfL7be0aGNK1ZHfHeGQ%2Bc-PFNQv%2BKZJTAk12yRbP2Vw%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project-lombok+unsubscribe@googlegroups.com.
> To unsubscribe from this group and stop receiving emails from it, send an email to project-lombo...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/60464964-684a-4b92-abce-c955e691698e%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project-lombo...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/CAOu%2Baf%3DYfL7be0aGNK1ZHfHeGQ%2Bc-PFNQv%2BKZJTAk12yRbP2Vw%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project-lombo...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/CAJ0GajTKCvGTLng8M3z98n89JQ3Ju6YNgxc69B%2BV3s87Ge%3D2MQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project-lombo...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/0580d5c6-ab03-4abd-ba8e-77089fba0814%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/CAJ0GajQzp16zok8YRb0PngBCRcuUFB_y5K7cGVtidqKxrpLpBg%40mail.gmail.com.
Roel actually was planning to mess with wither in the next release. Specifically, add lambda variants, along this line (where 'foo' is an int property):public Self withFoo(ToIntFunction<Self> func) { int newValueForFoo = func.apply(this); return new Self(allFieldsTheSameExceptFoo); }Perhaps naming comes up for that again, as overloading means that passing 'null' is a problem (ambiguous invocation).The name (@Wither) remains the biggest blocker to making it stable.
On Thursday, August 22, 2019 at 9:22:46 AM UTC+2, Michael Berry wrote:
I use it and see no problem with it going stable as is, personally.
On Thu, 22 Aug 2019, 04:15 Victor Williams Stafusa da Silva, <victor...@gmail.com> wrote:
I don't care about it being experimental and use it anyway. It is a great feature.The only problem is having ".experimental" as part of the package name, implying some possible future compatibility problem of having to change my imports in the future or getting a bunch of deprecated warnings (or even compilation errors) for not doing so, when it is considered stable.
> To unsubscribe from this group and stop receiving emails from it, send an email to project...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/60464964-684a-4b92-abce-c955e691698e%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/project-lombok/CAOu%2Baf%3DYfL7be0aGNK1ZHfHeGQ%2Bc-PFNQv%2BKZJTAk12yRbP2Vw%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "Project Lombok" group.
To unsubscribe from this group and stop receiving emails from it, send an email to project...@googlegroups.com.