Restructure bytecode listing tests on InlineOnly/inline+reified
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
@file:[JvmName("Foo") JvmMultifileClass]
|
||||
package test
|
||||
|
||||
fun foo() {
|
||||
inlineOnly()
|
||||
}
|
||||
|
||||
// No method should be generated in multifile facade for 'inlineOnly'
|
||||
// Because 'inlineOnly' is private in file part (because it's inline-only) and can't be delegated from facade
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.internal.InlineOnly
|
||||
inline fun inlineOnly() { }
|
||||
@@ -0,0 +1,10 @@
|
||||
@kotlin.Metadata
|
||||
public final class test/Foo {
|
||||
public final static method foo(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
synthetic final class test/Foo__InlineOnlyMultifileKt {
|
||||
public final static method foo(): void
|
||||
private final static @kotlin.internal.InlineOnly method inlineOnly(): void
|
||||
}
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
@file:[JvmName("Foo") JvmMultifileClass]
|
||||
package test
|
||||
|
||||
fun foo() {
|
||||
prop
|
||||
}
|
||||
|
||||
// No method should be generated in multifile facade for 'inlineOnly'
|
||||
// Because 'inlineOnly' is private in file part (because it's inline-only) and can't be delegated from facade
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.internal.InlineOnly
|
||||
inline var prop: String
|
||||
get() = "12"
|
||||
set(value) {}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
@kotlin.Metadata
|
||||
public final class test/Foo {
|
||||
public final static method foo(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
synthetic final class test/Foo__InlineOnlyPropertyMultifileKt {
|
||||
public final static method foo(): void
|
||||
private final static method getProp(): java.lang.String
|
||||
public synthetic deprecated static @kotlin.internal.InlineOnly method prop$annotations(): void
|
||||
private final static method setProp(p0: java.lang.String): void
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
@file:[JvmName("Foo") JvmMultifileClass]
|
||||
package test
|
||||
|
||||
fun foo() {
|
||||
inlineReified<String>()
|
||||
}
|
||||
|
||||
public inline fun <reified T> inlineReified() {}
|
||||
@@ -0,0 +1,10 @@
|
||||
@kotlin.Metadata
|
||||
public final class test/Foo {
|
||||
public final static method foo(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
synthetic final class test/Foo__InlineReifiedMultifileKt {
|
||||
public final static method foo(): void
|
||||
private final static method inlineReified(): void
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
@file:[JvmName("Foo") JvmMultifileClass]
|
||||
package test
|
||||
|
||||
fun foo() {
|
||||
"".extProp
|
||||
}
|
||||
|
||||
inline val <reified Z> Z.extProp: String
|
||||
get() = "123"
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
@kotlin.Metadata
|
||||
public final class test/Foo {
|
||||
public final static method foo(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
synthetic final class test/Foo__InlineReifiedPropertyMultifileKt {
|
||||
public final static method foo(): void
|
||||
private final static method getExtProp(p0: java.lang.Object): java.lang.String
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.internal.InlineOnly
|
||||
inline fun foo() { }
|
||||
|
||||
class Foo {
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.internal.InlineOnly
|
||||
inline fun foo() { }
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
@kotlin.Metadata
|
||||
public final class Foo {
|
||||
public method <init>(): void
|
||||
private final @kotlin.internal.InlineOnly method foo(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class InlineOnlyKt {
|
||||
private final static @kotlin.internal.InlineOnly method foo(): void
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.internal.InlineOnly
|
||||
inline var prop: String
|
||||
get() = "12"
|
||||
set(value) {}
|
||||
|
||||
inline var prop2: String
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.internal.InlineOnly
|
||||
get() = "12"
|
||||
set(value) {}
|
||||
|
||||
|
||||
class Foo {
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.internal.InlineOnly
|
||||
inline var prop: String
|
||||
get() = "12"
|
||||
set(value) {}
|
||||
|
||||
inline var prop2: String
|
||||
@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE")
|
||||
@kotlin.internal.InlineOnly
|
||||
get() = "12"
|
||||
set(value) {}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
@kotlin.Metadata
|
||||
public final class Foo {
|
||||
public method <init>(): void
|
||||
private final method getProp(): java.lang.String
|
||||
private final @kotlin.internal.InlineOnly method getProp2(): java.lang.String
|
||||
public synthetic deprecated static @kotlin.internal.InlineOnly method prop$annotations(): void
|
||||
private final method setProp(p0: java.lang.String): void
|
||||
public final method setProp2(@org.jetbrains.annotations.NotNull p0: java.lang.String): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class InlineOnlyPropertyKt {
|
||||
private final static method getProp(): java.lang.String
|
||||
private final static @kotlin.internal.InlineOnly method getProp2(): java.lang.String
|
||||
public synthetic deprecated static @kotlin.internal.InlineOnly method prop$annotations(): void
|
||||
private final static method setProp(p0: java.lang.String): void
|
||||
public final static method setProp2(@org.jetbrains.annotations.NotNull p0: java.lang.String): void
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
inline fun <T> bar() { }
|
||||
|
||||
inline fun <U, reified V> baz() {}
|
||||
|
||||
class Foo {
|
||||
inline fun <T> bar() { }
|
||||
|
||||
inline fun <U, reified V> baz() {}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
@kotlin.Metadata
|
||||
public final class Foo {
|
||||
public method <init>(): void
|
||||
public final method bar(): void
|
||||
private final method baz(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class InlineReifiedKt {
|
||||
public final static method bar(): void
|
||||
private final static method baz(): void
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
inline val <reified Z> Z.extProp: String
|
||||
get() = "123"
|
||||
|
||||
class Foo {
|
||||
inline val <reified Z> Z.extProp: String
|
||||
get() = "456"
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
@kotlin.Metadata
|
||||
public final class Foo {
|
||||
public method <init>(): void
|
||||
private final method getExtProp(p0: java.lang.Object): java.lang.String
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class InlineReifiedPropertyKt {
|
||||
private final static method getExtProp(p0: java.lang.Object): java.lang.String
|
||||
}
|
||||
Reference in New Issue
Block a user