Type ... is not supported in callback signature


#1

I have Kotlin Native compilation output like this:

src/kotlin/main.kt:36:38: error: type _XXX is not supported in callback signature

I am passing callback function that has the _XXX as parameter. This is basically enum like this in the generated code:

enum class _XXX(override val value: Int) : CEnum {
MDP_NOTIFY_SELECT(0),
MDP_NOTIFY_INSERT(1),
MDP_NOTIFY_UPDATE(2),
MDP_NOTIFY_DELETE(3),
MDP_NOTIFY_CLEAR(4),
;

companion object {
    fun byValue(value: Int) = _MDP_NOTIFY_TYPE.values().find { it.value == value }!!
}

class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) {
    companion object : Type(IntVar.size.toInt())
    var value: _MDP_NOTIFY_TYPE
        get() = byValue(this.reinterpret<IntVar>().value)
        set(value) { this.reinterpret<IntVar>().value = value.value }
}

}

I can’t change the native library. Is there any way how to handle this is callback function?

Thank you