Faced with issue when using Kotlin value class annotated by @JvmInline
Here is an example:
@JvmInline
value class TestClass(val id: String)
interface TestInterface {
fun doSomething(aVal: TestClass)
fun callSomething(aVal: String)
}
fun main() {
val clazz = TestInterface::class.java
clazz.methods.forEach { println(it) }
}
Result output:
public abstract void TestInterface.callSomething(java.lang.String)
public abstract void TestInterface.doSomething-Qkb7kKY(java.lang.String)
Expected output:
public abstract void TestInterface.callSomething(java.lang.String)
public abstract void TestInterface.doSomething(java.lang.String)
Any ideas how to solve this issue without switching to data class?