Steven Sherry
03/08/2020, 6:44 PMMike
03/08/2020, 7:04 PMJannis
03/08/2020, 7:13 PMfold functions the use of inline is quite rare isn't it? At least on arrow core most inline functions were functions that kapt extensions for functions optics generates and fold. Arrow used to have a lot more inline functions quite a long time ago though. What version are you on? o.OJannis
03/08/2020, 7:14 PMfix is always inline as well.Steven Sherry
03/08/2020, 7:19 PM<http://Validated.applicative.ma|Validated.applicative.ma>p().fix() . I omitted the arguments for brevity’s sake.Steven Sherry
03/08/2020, 7:21 PMJannis
03/08/2020, 7:23 PMfix is really pervasive right now. It is just a typecast and thus probably better to have it inline. We hope to remove it with arrow-meta as soon as possible because it is literally just boilerplate to patch a compiler weakness...Jannis
03/08/2020, 7:25 PMI’m on version 0.10.4 to answer one of your previous questionsThen it should really only be
fold / fix and some function composition code with inline (and @optics generated code). A while ago much more of arrow was using inline but that lead to a few weird things regarding our fx blocksSteven Sherry
03/08/2020, 7:25 PMSteven Sherry
03/08/2020, 7:26 PMJannis
03/08/2020, 7:27 PMval x: Kind<ForOption, X> = Some(...)
when (x) {
is Some -> ...
is None -> ...
}
I mean that should work, but the compiler should hate it o.OSteven Sherry
03/08/2020, 7:28 PMSteven Sherry
03/08/2020, 7:29 PMSteven Sherry
03/08/2020, 7:29 PMJannis
03/08/2020, 7:30 PMval x: Kind<ForOption, X> = Some(...)
val y: Option<X> = xSteven Sherry
03/08/2020, 7:34 PMSteven Sherry
03/08/2020, 8:37 PMMike
03/09/2020, 2:19 AMSteven Sherry
03/09/2020, 2:28 AMMike
03/09/2020, 9:23 PMTonis Ives
06/07/2024, 2:36 AMexclude("**/*__Optics*.class")
You should look into your build directory and find the .class extension you want to ignore.