You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Oct 16, 2024. It is now read-only.
Currently FreeBuilder's supports on collection cannot support de-pluralizing the property names. e.g. List<String> descendants(); would generate addDescendants(String element) in the builder class, but what really expected is addDescendant(String element). Even better, there should be some kind of Immutables-like naming convention mapping support
The text was updated successfully, but these errors were encountered:
I considered this when first creating FreeBuilder, but decided against it for a few reasons, which in no particular order are:
We could stop generating addDescendants(descendant) without breaking any existing code, because we generate a varargs method with matching signature. Thus, this method can be thought of as just an optimization for the common case of adding a single element.
Typing addDe no longer uniquely identifies a single method name, making it more annoying to autocomplete. Some singular/plural changes are especially annoying for this, as they aren't just adding an "s" to the end.
Google Protobuf (the inspiration for the project in many ways I'm deeply indebted to) doesn't have this feature, and nobody seemed to care
I am very much not an expert in this field. Chances were really good I'd trip over landmines regarding i18n that didn't occur to me, and if I tried to maintain the plural/singular list myself, I would likely be doing nothing but updating it. I had no examples to copy for adding extensions to annotation processors, and wanted to focus on other features.
With that said, I have no objection to someone else writing hooks into FreeBuilder that would allow them to provide a third-party depluralization service that users can opt into somehow if 2 is not a concern for them.
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Currently FreeBuilder's supports on collection cannot support de-pluralizing the property names. e.g.
List<String> descendants();
would generateaddDescendants(String element)
in the builder class, but what really expected isaddDescendant(String element)
. Even better, there should be some kind of Immutables-like naming convention mapping supportThe text was updated successfully, but these errors were encountered: