Build stubs for modifiers

This commit is contained in:
Alexey Tsvetkov
2015-10-17 00:22:50 +03:00
parent c459e78a7d
commit 5e90bafe18
19 changed files with 194 additions and 50 deletions
@@ -4,7 +4,7 @@
package test
@dependency.A @dependency.B @dependency.C public final class Annotations public constructor() {
@dependency.A @dependency.B @dependency.C @kotlin.inline public final val p: @dependency.B kotlin.Int /* compiled code */
@dependency.A @dependency.B @dependency.C public final val p: @dependency.B kotlin.Int /* compiled code */
@dependency.A @dependency.B @dependency.C @kotlin.inline public final fun f(@dependency.A @dependency.B @dependency.C i: @dependency.A kotlin.Int): kotlin.Unit { /* compiled code */ }
@dependency.A @dependency.B @dependency.C public final inline fun f(@dependency.A @dependency.B @dependency.C i: @dependency.A kotlin.Int): kotlin.Unit { /* compiled code */ }
}
@@ -7,5 +7,5 @@ import dependency.*
inline @A("f") @B(2) @C fun f(@A("i") @B(3) @C i: @A("int") Int) {
}
inline @A("p") @B(3) @C val p: @B(4) Int = 2
@A("p") @B(3) @C val p: @B(4) Int = 2
}
@@ -3,6 +3,12 @@
package test
public final data class Modifiers public constructor() {
}
public final data class Modifiers public constructor(x: kotlin.Int) {
public final val x: kotlin.Int /* compiled code */
public final operator fun component1(): kotlin.Int { /* compiled code */ }
public final inline fun inlined(crossinline arg1: () -> kotlin.Unit, noinline arg2: () -> kotlin.Unit): kotlin.Unit { /* compiled code */ }
public final tailrec fun sum(x: kotlin.Long, sum: kotlin.Long): kotlin.Long { /* compiled code */ }
}
@@ -1,3 +1,12 @@
package test
data class Modifiers
data class Modifiers(val x: Int) {
tailrec fun sum(x: Long, sum: Long): Long {
if (x == 0.toLong()) return sum
return sum(x - 1, sum + x)
}
inline fun inlined(crossinline arg1: ()->Unit, noinline arg2: ()->Unit): Unit {}
}
annotation class Ann