Initial version of codegen for inline classes

This commit is contained in:
Mikhail Zarechenskiy
2018-01-29 13:06:12 +03:00
parent fbc02dee58
commit 928a342ace
18 changed files with 266 additions and 148 deletions
@@ -0,0 +1,30 @@
// !LANGUAGE: +InlineClasses
inline class Foo(val x: Int) {
fun empty() {}
fun param(y: String) {}
fun Any.extension() {}
fun Any.extensionAndParam(y: Double) {}
fun withInlineClassType(c: Foo) {}
}
// method: Foo$Erased::empty
// jvm signature: (I)V
// generic signature: null
// method: Foo$Erased::param
// jvm signature: (ILjava/lang/String;)V
// generic signature: null
// method: Foo$Erased::extension
// jvm signature: (ILjava/lang/Object;)V
// generic signature: null
// method: Foo$Erased::extensionAndParam
// jvm signature: (ILjava/lang/Object;D)V
// generic signature: null
// method: Foo$Erased::withInlineClassType
// jvm signature: (II)V
// generic signature: null