Add more stub generator tests for external dependencies

This commit is contained in:
Dmitry Petrov
2017-05-05 13:38:41 +03:00
parent dba9011563
commit 1dbd6453e0
17 changed files with 237 additions and 6 deletions
+10
View File
@@ -0,0 +1,10 @@
// !DUMP_DEPENDENCIES
// FILE: JEnum.java
public enum JEnum {
ONE, TWO, THREE;
}
// FILE: javaEnum.kt
val test = JEnum.ONE
+9
View File
@@ -0,0 +1,9 @@
FILE /javaEnum.kt
PROPERTY public val test: JEnum
FIELD PROPERTY_BACKING_FIELD public val test: JEnum
EXPRESSION_BODY
GET_ENUM 'ONE' type=JEnum
FUN DEFAULT_PROPERTY_ACCESSOR public fun <get-test>(): JEnum
BLOCK_BODY
RETURN type=kotlin.Nothing from='<get-test>(): JEnum'
GET_FIELD 'test: JEnum' type=JEnum origin=null
@@ -0,0 +1,23 @@
MODULE_FRAGMENT <test-module>
EXTERNAL_PACKAGE_FRAGMENT <root>
CLASS IR_EXTERNAL_DECLARATION_STUB ENUM_CLASS JEnum
CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB public constructor JEnum()
ENUM_ENTRY IR_EXTERNAL_DECLARATION_STUB enum entry ONE
ENUM_ENTRY IR_EXTERNAL_DECLARATION_STUB enum entry THREE
ENUM_ENTRY IR_EXTERNAL_DECLARATION_STUB enum entry TWO
FUN IR_EXTERNAL_DECLARATION_STUB protected final override fun clone(): kotlin.Any
FUN IR_EXTERNAL_DECLARATION_STUB protected/*protected and package*/ final override fun finalize(): kotlin.Unit
FUN IR_EXTERNAL_DECLARATION_STUB public final override fun getDeclaringClass(): java.lang.Class<JEnum!>!
FUN IR_EXTERNAL_DECLARATION_STUB public final override fun compareTo(other: JEnum!): kotlin.Int
VALUE_PARAMETER value-parameter other: JEnum!
FUN IR_EXTERNAL_DECLARATION_STUB public final override fun equals(other: kotlin.Any?): kotlin.Boolean
VALUE_PARAMETER value-parameter other: kotlin.Any?
FUN IR_EXTERNAL_DECLARATION_STUB public final override fun hashCode(): kotlin.Int
PROPERTY IR_EXTERNAL_DECLARATION_STUB public final override val name: kotlin.String
FUN IR_EXTERNAL_DECLARATION_STUB public final override fun <get-name>(): kotlin.String
PROPERTY IR_EXTERNAL_DECLARATION_STUB public final override val ordinal: kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public final override fun <get-ordinal>(): kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun toString(): kotlin.String
FUN IR_EXTERNAL_DECLARATION_STUB public final fun valueOf(value: kotlin.String): JEnum
VALUE_PARAMETER value-parameter value: kotlin.String
FUN IR_EXTERNAL_DECLARATION_STUB public final fun values(): kotlin.Array<JEnum>
+18
View File
@@ -0,0 +1,18 @@
// !DUMP_DEPENDENCIES
// FILE: J.java
public class J {
public class JInner {
public void foo() {}
public int z = 0;
}
public void bar() {}
public int x = 0;
}
// FILE: javaInnerClass.kt
class Test1 : J() {
val test = JInner()
}
+29
View File
@@ -0,0 +1,29 @@
FILE /javaInnerClass.kt
CLASS CLASS Test1
$this: VALUE_PARAMETER this@Test1: Test1
CONSTRUCTOR public constructor Test1()
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'constructor J()'
INSTANCE_INITIALIZER_CALL classDescriptor='Test1'
PROPERTY public final val test: J.JInner
FIELD PROPERTY_BACKING_FIELD public final val test: J.JInner
EXPRESSION_BODY
CALL 'constructor JInner()' type=J.JInner origin=null
$this: GET_VAR 'this@Test1: Test1' type=Test1 origin=null
FUN DEFAULT_PROPERTY_ACCESSOR public final fun <get-test>(): J.JInner
$this: VALUE_PARAMETER this@Test1: Test1
BLOCK_BODY
RETURN type=kotlin.Nothing from='<get-test>(): J.JInner'
GET_FIELD 'test: J.JInner' type=J.JInner origin=null
receiver: GET_VAR 'this@Test1: Test1' type=Test1 origin=null
PROPERTY FAKE_OVERRIDE public final override var x: kotlin.Int
FIELD FAKE_OVERRIDE public final override var x: kotlin.Int
FUN FAKE_OVERRIDE public open override fun bar(): kotlin.Unit
$this: VALUE_PARAMETER this@J: J
FUN FAKE_OVERRIDE public open override fun equals(other: kotlin.Any?): kotlin.Boolean
$this: VALUE_PARAMETER this@Any: Any
VALUE_PARAMETER value-parameter other: kotlin.Any?
FUN FAKE_OVERRIDE public open override fun hashCode(): kotlin.Int
$this: VALUE_PARAMETER this@Any: Any
FUN FAKE_OVERRIDE public open override fun toString(): kotlin.String
$this: VALUE_PARAMETER this@Any: Any
@@ -0,0 +1,20 @@
MODULE_FRAGMENT <test-module>
EXTERNAL_PACKAGE_FRAGMENT <root>
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS J
CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB public constructor J()
PROPERTY IR_EXTERNAL_DECLARATION_STUB public final var x: kotlin.Int
FIELD IR_EXTERNAL_DECLARATION_STUB public final var x: kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open fun bar(): kotlin.Unit
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS JInner
CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB public constructor JInner()
PROPERTY IR_EXTERNAL_DECLARATION_STUB public final var z: kotlin.Int
FIELD IR_EXTERNAL_DECLARATION_STUB public final var z: kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open fun foo(): kotlin.Unit
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun equals(other: kotlin.Any?): kotlin.Boolean
VALUE_PARAMETER value-parameter other: kotlin.Any?
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun hashCode(): kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun toString(): kotlin.String
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun equals(other: kotlin.Any?): kotlin.Boolean
VALUE_PARAMETER value-parameter other: kotlin.Any?
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun hashCode(): kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun toString(): kotlin.String
+13
View File
@@ -0,0 +1,13 @@
// !DUMP_DEPENDENCIES
// FILE: J.java
public class J {
public static class JJ {
public void foo() {}
public static void bar() {}
}
}
// FILE: javaNestedClass.kt
fun test(jj: J.JJ) = jj.foo()
+7
View File
@@ -0,0 +1,7 @@
FILE /javaNestedClass.kt
FUN public fun test(jj: J.JJ): kotlin.Unit
VALUE_PARAMETER value-parameter jj: J.JJ
BLOCK_BODY
RETURN type=kotlin.Nothing from='test(J.JJ): Unit'
CALL 'foo(): Unit' type=kotlin.Unit origin=null
$this: GET_VAR 'value-parameter jj: J.JJ' type=J.JJ origin=null
@@ -0,0 +1,16 @@
MODULE_FRAGMENT <test-module>
EXTERNAL_PACKAGE_FRAGMENT <root>
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS J
CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB public constructor J()
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS JJ
CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB public constructor JJ()
FUN IR_EXTERNAL_DECLARATION_STUB public open fun foo(): kotlin.Unit
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun equals(other: kotlin.Any?): kotlin.Boolean
VALUE_PARAMETER value-parameter other: kotlin.Any?
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun hashCode(): kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun toString(): kotlin.String
FUN IR_EXTERNAL_DECLARATION_STUB public open fun bar(): kotlin.Unit
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun equals(other: kotlin.Any?): kotlin.Boolean
VALUE_PARAMETER value-parameter other: kotlin.Any?
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun hashCode(): kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun toString(): kotlin.String
+13
View File
@@ -0,0 +1,13 @@
// !DUMP_DEPENDENCIES
// FILE: external.kt
// EXTERNAL_FILE
class Outer {
inner class Inner {
fun foo() {}
}
fun bar() {}
}
// FILE: kotlinInnerClass.kt
fun test(inner: Outer.Inner) = inner.foo()
@@ -0,0 +1,7 @@
FILE /kotlinInnerClass.kt
FUN public fun test(inner: Outer.Inner): kotlin.Unit
VALUE_PARAMETER value-parameter inner: Outer.Inner
BLOCK_BODY
RETURN type=kotlin.Nothing from='test(Outer.Inner): Unit'
CALL 'foo(): Unit' type=kotlin.Unit origin=null
$this: GET_VAR 'value-parameter inner: Outer.Inner' type=Outer.Inner origin=null
@@ -0,0 +1,8 @@
MODULE_FRAGMENT <built-ins module>
EXTERNAL_PACKAGE_FRAGMENT kotlin
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS Any
CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB public constructor Any()
FUN IR_EXTERNAL_DECLARATION_STUB public open fun hashCode(): kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open fun toString(): kotlin.String
FUN IR_EXTERNAL_DECLARATION_STUB public open operator fun equals(other: kotlin.Any?): kotlin.Boolean
VALUE_PARAMETER value-parameter other: kotlin.Any?
@@ -0,0 +1,16 @@
MODULE_FRAGMENT <test-module>
EXTERNAL_PACKAGE_FRAGMENT <root>
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS Outer
CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB public constructor Outer()
FUN IR_EXTERNAL_DECLARATION_STUB public final fun bar(): kotlin.Unit
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS Inner
CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB public constructor Inner()
FUN IR_EXTERNAL_DECLARATION_STUB public final fun foo(): kotlin.Unit
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun equals(other: kotlin.Any?): kotlin.Boolean
VALUE_PARAMETER value-parameter other: kotlin.Any?
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun hashCode(): kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun toString(): kotlin.String
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun equals(other: kotlin.Any?): kotlin.Boolean
VALUE_PARAMETER value-parameter other: kotlin.Any?
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun hashCode(): kotlin.Int
FUN IR_EXTERNAL_DECLARATION_STUB public open override fun toString(): kotlin.String