FIR: add class type parameters to constructors & change their rendering
This commit is contained in:
+6
-2
@@ -1,13 +1,17 @@
|
||||
FILE: base.kt
|
||||
public final class Hello : R|kotlin/Any| {
|
||||
public constructor(msg: R|kotlin/String|): super<R|kotlin/Any|>()
|
||||
public constructor(msg: R|kotlin/String|): R|hello/Hello| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final val msg: R|kotlin/String| = R|<local>/msg|
|
||||
public get(): R|kotlin/String|
|
||||
|
||||
}
|
||||
public final class Test : R|kotlin/Any| {
|
||||
public constructor(set: R|java/util/Set<*>|): super<R|kotlin/Any|>()
|
||||
public constructor(set: R|java/util/Set<*>|): R|hello/Test| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final val set: R|java/util/Set<*>| = R|<local>/set|
|
||||
public get(): R|java/util/Set<*>|
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
FILE: jvm.kt
|
||||
public final class User : R|Annotated| {
|
||||
public constructor(): super<R|Annotated|>()
|
||||
public constructor(): R|User| {
|
||||
super<R|Annotated|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
lval x: R|kotlin/String| = R|/Annotated.foo|(String(123))
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
FILE: jvm.kt
|
||||
public final class User : R|AnnotatedDerived| {
|
||||
public constructor(): super<R|AnnotatedDerived|>()
|
||||
public constructor(): R|User| {
|
||||
super<R|AnnotatedDerived|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
lval x: R|kotlin/String| = R|/AnnotatedDerived.foo|(String(123))
|
||||
|
||||
+3
-1
@@ -1,5 +1,7 @@
|
||||
FILE: jvm.kt
|
||||
public final class A : R|Some| {
|
||||
public constructor(): super<R|Some|>()
|
||||
public constructor(): R|A| {
|
||||
super<R|Some|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+6
-2
@@ -1,10 +1,14 @@
|
||||
FILE: simpleFakeOverride.kt
|
||||
public final class Some : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor(): R|Some| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
public final class B : R|A<Some>| {
|
||||
public constructor(): super<R|A<Some>|>()
|
||||
public constructor(): R|B| {
|
||||
super<R|A<Some>|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|FakeOverride</A.foo: R|ft<T, T?>|!>|(R|/Some.Some|())
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
FILE: jvm.kt
|
||||
public final class A : R|Some| {
|
||||
public constructor(): super<R|Some|>()
|
||||
public constructor(): R|A| {
|
||||
super<R|Some|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
lval res1: R|kotlin/Boolean| = R|/Some.foo|(Int(1))
|
||||
|
||||
@@ -2,7 +2,9 @@ FILE: Base.kt
|
||||
public abstract interface First : R|kotlin/Any| {
|
||||
}
|
||||
public open class Second : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor(): R|Second| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public open fun R|First|.foo(s: R|kotlin/String|, i: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
FILE: Test.kt
|
||||
public final class Tester : R|Inheritor|, R|First| {
|
||||
public constructor(): super<R|Inheritor|>()
|
||||
public constructor(): R|Tester| {
|
||||
super<R|Inheritor|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|/Inheritor.foo|(String(abc), Int(456))
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
FILE: Derived.kt
|
||||
public final class Derived : R|Some| {
|
||||
public constructor(): super<R|Some|>()
|
||||
public constructor(): R|Derived| {
|
||||
super<R|Some|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,16 +1,22 @@
|
||||
FILE: common.kt
|
||||
<T> public open expect class A : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor<T>(): R|A<T>| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public open fun foo(arg: R|T|): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
public open class B : R|A<kotlin/String>| {
|
||||
public constructor(): super<R|A<kotlin/String>|>()
|
||||
public constructor(): R|B| {
|
||||
super<R|A<kotlin/String>|>()
|
||||
}
|
||||
|
||||
}
|
||||
public open class C : R|B| {
|
||||
public constructor(): super<R|B|>()
|
||||
public constructor(): R|C| {
|
||||
super<R|B|>()
|
||||
}
|
||||
|
||||
public open fun bar(arg: R|kotlin/String|): R|kotlin/String| {
|
||||
^bar R|<local>/arg|
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
FILE: jvm.kt
|
||||
<T> public open actual class A : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor<T>(): R|A<T>| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public open actual fun foo(arg: R|T|): R|kotlin/Unit| {
|
||||
}
|
||||
@@ -15,7 +17,9 @@ FILE: jvm.kt
|
||||
|
||||
}
|
||||
public final class D : R|C| {
|
||||
public constructor(): super<R|C|>()
|
||||
public constructor(): R|D| {
|
||||
super<R|C|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|FakeOverride</A.foo: R|kotlin/Unit|>|(String())
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
FILE: common.kt
|
||||
public final expect class MyList : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor(): R|MyList| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final fun get(i: R|kotlin/Int|): R|kotlin/Int|
|
||||
|
||||
}
|
||||
public open class Wrapper : R|kotlin/Any| {
|
||||
public constructor(list: R|MyList|): super<R|kotlin/Any|>()
|
||||
public constructor(list: R|MyList|): R|Wrapper| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final val list: R|MyList| = R|<local>/list|
|
||||
public get(): R|MyList|
|
||||
|
||||
+9
-3
@@ -1,6 +1,8 @@
|
||||
FILE: jvm.kt
|
||||
public final actual class MyList : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor(): R|MyList| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final actual fun get(i: R|kotlin/Int|): R|kotlin/Int| {
|
||||
^get R|<local>/i|
|
||||
@@ -11,7 +13,9 @@ FILE: jvm.kt
|
||||
|
||||
}
|
||||
public final class DerivedList : R|MyList| {
|
||||
public constructor(): super<R|MyList|>()
|
||||
public constructor(): R|DerivedList| {
|
||||
super<R|MyList|>()
|
||||
}
|
||||
|
||||
public final fun useMember(): R|kotlin/Unit| {
|
||||
R|/MyList.get|(Int(1))
|
||||
@@ -24,7 +28,9 @@ FILE: jvm.kt
|
||||
R|<local>/list|.R|/MyList.set|(Int(2), Int(3))
|
||||
}
|
||||
public final class DerivedWrapper : R|Wrapper| {
|
||||
public constructor(): super<R|Wrapper|>()
|
||||
public constructor(): R|DerivedWrapper| {
|
||||
super<R|Wrapper|>()
|
||||
}
|
||||
|
||||
public final fun use(): R|kotlin/Unit| {
|
||||
R|/Wrapper.list|.R|/MyList.get|(Int(1))
|
||||
|
||||
@@ -1,11 +1,15 @@
|
||||
FILE: common.kt
|
||||
public open expect class A : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final fun foo(): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
public open class B : R|A| {
|
||||
public constructor(): super<R|A|>()
|
||||
public constructor(): R|B| {
|
||||
super<R|A|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+9
-3
@@ -1,6 +1,8 @@
|
||||
FILE: jvm.kt
|
||||
public open actual class A : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final actual fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
@@ -10,7 +12,9 @@ FILE: jvm.kt
|
||||
|
||||
}
|
||||
public final class C : R|B| {
|
||||
public constructor(): super<R|B|>()
|
||||
public constructor(): R|C| {
|
||||
super<R|B|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|/A.foo|()
|
||||
@@ -19,7 +23,9 @@ FILE: jvm.kt
|
||||
|
||||
}
|
||||
public final class D : R|A| {
|
||||
public constructor(): super<R|A|>()
|
||||
public constructor(): R|D| {
|
||||
super<R|A|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|/A.foo|()
|
||||
|
||||
@@ -1,11 +1,15 @@
|
||||
FILE: common.kt
|
||||
public open expect class A : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor(): R|A| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final fun foo(): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
public open class B : R|A| {
|
||||
public constructor(): super<R|A|>()
|
||||
public constructor(): R|B| {
|
||||
super<R|A|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+12
-4
@@ -1,6 +1,8 @@
|
||||
FILE: jvm.kt
|
||||
public abstract class X : R|kotlin/Any| {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
public constructor(): R|X| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final fun bar(): R|kotlin/Unit| {
|
||||
}
|
||||
@@ -12,14 +14,18 @@ FILE: jvm.kt
|
||||
|
||||
}
|
||||
public open actual class A : R|X|, R|Y| {
|
||||
public constructor(): super<R|X|>()
|
||||
public constructor(): R|A| {
|
||||
super<R|X|>()
|
||||
}
|
||||
|
||||
public final actual fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
public final class C : R|B| {
|
||||
public constructor(): super<R|B|>()
|
||||
public constructor(): R|C| {
|
||||
super<R|B|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|/A.foo|()
|
||||
@@ -29,7 +35,9 @@ FILE: jvm.kt
|
||||
|
||||
}
|
||||
public final class D : R|A| {
|
||||
public constructor(): super<R|A|>()
|
||||
public constructor(): R|D| {
|
||||
super<R|A|>()
|
||||
}
|
||||
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|/A.foo|()
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
FILE: B.kt
|
||||
public final class B : R|A| {
|
||||
public constructor(): super<R|A|>()
|
||||
public constructor(): R|B| {
|
||||
super<R|A|>()
|
||||
}
|
||||
|
||||
public final override fun foo(): R|B| {
|
||||
^foo this#
|
||||
|
||||
Reference in New Issue
Block a user