我正在尝试熟悉 arrow-kt 库,但为了完成最简单的事情,我很笨:使用内置类型类之一,即“显示”,我使用 @extension 注释使用 kapt 尝试了它并且 kapt 本身正在按预期生成必要的代码,但是缺少对扩展函数“show():String”的引用。有人可以帮我解决这个问题吗?我浪费了两天时间让这个工作。
非常感谢!
此致
亚历克斯
要扩展的类:
package org.hudelundpfusch.sqwakkel.arrowtest
import arrow.extension
import arrow.typeclasses.Show
class Fump(private val fumpel: String) {
companion object {}
override fun toString(): String {
return "Fump(fumpel='$fumpel')"
}
}
@extension
interface FumpShow
: Show<Fump> {
override fun Fump.show(): String = toString()
}
这里我想使用扩展功能:
package org.hudelundpfusch.sqwakkel.arrowtest
class Gump {
private val fump: Fump = Fump("Fumpel!")
fun gumpel(): String = fump.show()
}
但是缺少对“fump.show()”的引用 =(