The cinterop tool isn't generating the proper mapp...
# kotlin-native
n
The cinterop tool isn't generating the proper mappings for the String Share APIs ( https://www.enlightenment.org/develop/guides/c/eina/strings.md ) that are part of the EFL library. For example the
eina_stringshare_replace
function should accept a CPointer<Eina_StringshareVar>? as the first parameter. Instead the function only accepts a CValuesRef<CPointerVar<Eina_StringshareVar>>? as the first parameter.
It should be possible to do something like this:
Copy code
// ...
val str = eina_stringshare_add("Enlightenment is not just a window manager for Linux/X11 and others")
    eina_stringshare_replace(str, "One desktop manager to rule them all")
    println(str?.toKString())
    eina_stringshare_del(str)
// ...
The
eina_stringshare_del
function isn't being properly mapped by the cinterop tool. The first parameter of the function should be CPointer<Eina_StringshareVar>? instead of String?.
e
for the latter, see "noStringConversion" in https://kotlinlang.org/docs/native-c-interop.html
n
Tried that but it didn't fix the issues.