Jean-Baptiste G.
Jean-Baptiste G.
The internal representation of of the "case-classes" is not specified, and it could be changed (unlikely, but eg. to use a single array for all fields, if that improve performance)....
I have been making progress on a compile-time solution. Still not finished yet. In the mean time I will soon do a release that allow arbitrary modifications on generated code....
@AndreasVoellmy, @j-baker, @danslapman : 0.11.0 has been published with an extension api that allows arbitrary modifications on generated code. See example in https://github.com/derive4j/derive4j/issues/68 for removing `private` modifier (potentially to be...
Yes, this is something that I wanted to add to the roadmap (and also planned by adt4j in https://github.com/sviperll/adt4j/issues/15 and https://github.com/sviperll/adt4j/issues/38). I started working on this and ``` java @Data(flavour...
Well, it will impact pattern matching: you will need to either use method reference or traditional instantiation of a (anonymous) class
I think in the first proposition you would be forced to use `Object` as type argument for `S` when pattern matching... would be kind of ugly, no?
mmm... where does `S` would come from? if you try to actually implement the Stream constructor, I can not see how it would work out. the semantic is completely different.
@gneuvill what I meant is that even without speaking of the code-generation part, the first proposition is impossible to implement: ``` java abstract class Stream { interface Cases { R...
indeed! @gneuvill Do you think ``` java static SData.Add1 getAdd1(Seminar temp) {} ``` should replace ``` java static Option getAdd1(Seminar temp) {} ``` or should we have both? (I think...