FIR: Support loading deserialized declarations from JVM class files

This commit is contained in:
Denis Zharkov
2019-03-25 18:10:40 +03:00
parent 0f9d54c4dc
commit 1426341e9f
482 changed files with 6225 additions and 27 deletions
@@ -0,0 +1 @@
public final fun assert(): R|kotlin/Unit|
@@ -0,0 +1,12 @@
public final class B : R|test/X|, R|test/Y| {
public open fun foo(): R|kotlin/Unit|
}
public abstract interface X : R|kotlin/Any| {
public abstract fun foo(): R|kotlin/Unit|
}
public abstract interface Y : R|test/X| {
}
@@ -0,0 +1,4 @@
public final class Example : R|kotlin/Any| {
public final infix fun test(other: R|test/Example|): R|kotlin/Unit|
}
@@ -0,0 +1,16 @@
public abstract interface Sub : R|test/Super1|, R|test/Super2| {
}
public abstract interface Super1 : R|kotlin/Any| {
private final fun bar(): R|kotlin/String|
public abstract fun foo(): R|kotlin/CharSequence|
}
public abstract interface Super2 : R|kotlin/Any| {
public abstract fun bar(): R|kotlin/CharSequence|
private final fun foo(): R|kotlin/String|
}
@@ -0,0 +1,8 @@
public abstract interface Sub : R|test/Super1|, R|test/Super2| {
}
public abstract interface Super1 : R|kotlin/Any| {
}
public abstract interface Super2 : R|kotlin/Any| {
}
@@ -0,0 +1,8 @@
public abstract interface Sub : R|test/Super1|, R|test/Super2| {
}
public abstract interface Super1 : R|kotlin/Any| {
}
public abstract interface Super2 : R|kotlin/Any| {
}
@@ -0,0 +1,6 @@
public final fun foo(r: R|java/lang/Runnable|): R|kotlin/Unit|
public abstract interface TaskObject : R|kotlin/Any| {
public abstract fun foo(r: R|java/lang/Runnable|): R|kotlin/Unit|
}
@@ -0,0 +1,4 @@
public abstract interface Runnable : R|kotlin/Any| {
public abstract fun run(): R|kotlin/Unit|
}
@@ -0,0 +1,4 @@
public final class Example : R|kotlin/Any| {
public final operator fun plus(other: R|test/Example|): R|kotlin/Unit|
}
@@ -0,0 +1,14 @@
public abstract interface A : R|kotlin/Any| {
public open fun bar(): R|kotlin/Unit|
public open fun foo(): R|kotlin/Unit|
}
public open class B : R|test/A| {
}
public final class C : R|test/B| {
public open fun bar(): R|kotlin/Unit|
}
@@ -0,0 +1,4 @@
public final class PropagateSubclassOfComparable : R|kotlin/Comparable<test/PropagateSubclassOfComparable>| {
public open operator fun compareTo(other: R|test/PropagateSubclassOfComparable|): R|kotlin/Int|
}
@@ -0,0 +1 @@
<T> public final fun f(): R|kotlin/Int|
@@ -0,0 +1 @@
<P> public final fun funParamParam(a: R|kotlin/Int|, b: R|P|): R|kotlin/Int|
@@ -0,0 +1 @@
<P> public final fun funParamParam(a: R|kotlin/Int|, b: R|P|): R|kotlin/Int|
@@ -0,0 +1 @@
<P, Q> public final fun funParamReferencesParam(): R|kotlin/Int|
@@ -0,0 +1,7 @@
<T> public final fun foo(): R|kotlin/Unit|
public abstract interface Bar : R|kotlin/Any| {
}
public abstract interface Foo : R|kotlin/Any| {
}
@@ -0,0 +1 @@
<A> public final fun uno(): R|kotlin/Int|
@@ -0,0 +1 @@
<A> public final fun tres(): R|kotlin/Int|
@@ -0,0 +1 @@
<A> public final fun dos(): R|kotlin/Int|
@@ -0,0 +1 @@
<P> public final fun funParamVarargParam(a: R|kotlin/Int|, vararg b: R|kotlin/Array<out P>|): R|kotlin/Int|
@@ -0,0 +1 @@
<P, Q> public final fun funTwoTypeParams(): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun ff(p: R|kotlin/collections/List<kotlin/CharSequence>|): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun ff(p: R|kotlin/collections/List<java/lang/CharSequence>|): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun fff(a: R|java/lang/Integer|): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun ffgg(): R|kotlin/collections/List<kotlin/CharSequence>|
@@ -0,0 +1 @@
public final fun ffgg(): R|kotlin/collections/List<kotlin/CharSequence>|
@@ -0,0 +1,4 @@
public final class River : R|kotlin/Any| {
public final fun song(): R|kotlin/Int|
}
@@ -0,0 +1,4 @@
public final class ClassFunGetFoo : R|kotlin/Any| {
public final fun getFoo(): R|kotlin/Int|
}
@@ -0,0 +1,6 @@
public final class ClassFunGetFoo : R|kotlin/Any| {
public final fun getFoo(): R|kotlin/Int|
public final fun setFoo(p: R|kotlin/Int|): R|kotlin/Unit|
}
@@ -0,0 +1,4 @@
public final class ClassFunGetFoo : R|kotlin/Any| {
public final fun set(p: R|kotlin/Int|): R|kotlin/Unit|
}
@@ -0,0 +1,2 @@
public final fun R|kotlin/Int|.shuffle(): R|kotlin/Int|
@@ -0,0 +1,4 @@
public final class ExtFunInClass : R|kotlin/Any| {
public final fun R|kotlin/Int|.shuffle(): R|kotlin/Int|
}
@@ -0,0 +1 @@
public final fun funDefaultArg(p: R|kotlin/Int|, q: R|kotlin/Int|, r: R|kotlin/Int|): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun fff(a: R|java/lang/Integer|): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun varargInt(a: R|kotlin/Int|, vararg b: R|kotlin/IntArray|): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun varargCharSequence(a: R|kotlin/Int|, vararg b: R|kotlin/Array<out java/lang/Integer>|): R|kotlin/Int|
@@ -0,0 +1,4 @@
public abstract class ModifierAbstract : R|kotlin/Any| {
public abstract fun abs(): R|kotlin/Int|
}
@@ -0,0 +1,4 @@
public open class ModifierOpen : R|kotlin/Any| {
public open fun abs(): R|kotlin/Int|
}
@@ -0,0 +1 @@
public final fun f(): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun getFoo(): R|kotlin/Int|
@@ -0,0 +1 @@
public final fun ff(): R|java/lang/Integer|
@@ -0,0 +1 @@
public final fun ff(): R|java/lang/Integer|
@@ -0,0 +1,3 @@
public final fun f(vararg t: R|kotlin/Array<out kotlin/String>|, f: R|kotlin/Function0<kotlin/Unit>|): R|kotlin/Unit|
public final fun f(vararg t: R|kotlin/IntArray|, f: R|kotlin/Function0<kotlin/Unit>|): R|kotlin/Unit|
@@ -0,0 +1,4 @@
public open class VarargInt : R|kotlin/Any| {
public open fun vararg(vararg p0: R|kotlin/IntArray|): R|kotlin/Unit|
}
@@ -0,0 +1,4 @@
public open class VarargString : R|kotlin/Any| {
public open fun vararg(vararg p0: R|kotlin/Array<out kotlin/String>|): R|kotlin/Unit|
}