K2: render additionally *s for static references

This commit allows to distinguish static VS non-static things
inside FIR_DUMP, e.g. static synthetic Enum.entries with
enum entry Enum.entries
This commit is contained in:
Mikhail Glukhikh
2023-06-14 15:49:04 +02:00
committed by Space Team
parent 70899d492d
commit 978d52d05b
63 changed files with 171 additions and 125 deletions
@@ -1,4 +1,4 @@
FILE: FlexiblePrimitiveOverloading.kt
public final fun foo(): R|kotlin/Unit| {
Q|java/lang/Integer|.R|java/lang/Integer.getInteger|(String(text), Int(239))
Q|java/lang/Integer|.R|java/lang/Integer.getInteger*s|(String(text), Int(239))
}
@@ -1,14 +1,14 @@
FILE: main.kt
public final fun main(): R|kotlin/Unit| {
Q|JavaClass|.R|/JavaClass.foo1|(<L> = foo1@fun <anonymous>(): R|kotlin/Int!| <inline=NoInline> {
Q|JavaClass|.R|/JavaClass.foo1*s|(<L> = foo1@fun <anonymous>(): R|kotlin/Int!| <inline=NoInline> {
^ Int(123)
}
)
Q|JavaClass|.R|/JavaClass.foo2|(<L> = foo2@fun <anonymous>(it: R|kotlin/Int!|): R|kotlin/String!| <inline=NoInline> {
Q|JavaClass|.R|/JavaClass.foo2*s|(<L> = foo2@fun <anonymous>(it: R|kotlin/Int!|): R|kotlin/String!| <inline=NoInline> {
^ R|<local>/it|.R|kotlin/Int.plus|(Int(2)).R|kotlin/Int.toString|()
}
)
Q|JavaClass|.R|/JavaClass.foo2|(foo2@fun <anonymous>(it: R|kotlin/Int!|): R|kotlin/String!| <inline=NoInline> {
Q|JavaClass|.R|/JavaClass.foo2*s|(foo2@fun <anonymous>(it: R|kotlin/Int!|): R|kotlin/String!| <inline=NoInline> {
^ R|<local>/it|.R|kotlin/Int.plus|(Int(3)).R|kotlin/Int.toString|()
}
)
@@ -16,8 +16,8 @@ FILE: main.kt
^ R|<local>/x|.R|kotlin/Int.toString|()
}
Q|JavaClass|.R|/JavaClass.foo2|(R|<local>/y|)
Q|JavaClass|.R|/JavaClass.foo3|<R|kotlin/Int!|>(foo3@fun <anonymous>(it: R|kotlin/Int!|): R|kotlin/String!| <inline=NoInline> {
Q|JavaClass|.R|/JavaClass.foo2*s|(R|<local>/y|)
Q|JavaClass|.R|/JavaClass.foo3*s|<R|kotlin/Int!|>(foo3@fun <anonymous>(it: R|kotlin/Int!|): R|kotlin/String!| <inline=NoInline> {
^ R|<local>/it|.R|kotlin/Int.plus|(Int(4)).R|kotlin/Int.toString|()
}
, Int(5))
@@ -6,18 +6,18 @@ FILE: k.kt
super<R|kotlin/Any|>()
}
public final val p1: R|kotlin/Int| = Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaPPackage<HIDDEN: j/JavaPackageLocal.javaPPackage is invisible>#|
public final val p1: R|kotlin/Int| = Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaPPackage*s<HIDDEN: j/JavaPackageLocal.javaPPackage is invisible>#|
public get(): R|kotlin/Int|
public final val p2: R|kotlin/Int| = Q|j/JavaProtected|.R|j/JavaProtected.javaPProtectedStatic<HIDDEN: j/JavaProtected.javaPProtectedStatic is invisible>#|
public final val p2: R|kotlin/Int| = Q|j/JavaProtected|.R|j/JavaProtected.javaPProtectedStatic*s<HIDDEN: j/JavaProtected.javaPProtectedStatic is invisible>#|
public get(): R|kotlin/Int|
public final val p3: R|kotlin/Int| = R|j/JavaProtected.JavaProtected|().R|j/JavaProtected.javaPProtectedPackage<HIDDEN: j/JavaProtected.javaPProtectedPackage is invisible>#|
public get(): R|kotlin/Int|
public final fun test(): R|kotlin/Unit| {
Q|j/JavaProtected|.R|j/JavaProtected.javaMProtectedStatic<HIDDEN: j/JavaProtected.javaMProtectedStatic is invisible>#|()
Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaMPackage<HIDDEN: j/JavaPackageLocal.javaMPackage is invisible>#|()
Q|j/JavaProtected|.R|j/JavaProtected.javaMProtectedStatic*s<HIDDEN: j/JavaProtected.javaMProtectedStatic is invisible>#|()
Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaMPackage*s<HIDDEN: j/JavaPackageLocal.javaMPackage is invisible>#|()
}
}
@@ -26,18 +26,18 @@ FILE: k.kt
super<R|j/JavaProtected|>()
}
public final val p1: R|kotlin/Int| = Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaPPackage<HIDDEN: j/JavaPackageLocal.javaPPackage is invisible>#|
public final val p1: R|kotlin/Int| = Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaPPackage*s<HIDDEN: j/JavaPackageLocal.javaPPackage is invisible>#|
public get(): R|kotlin/Int|
public final val p2: R|kotlin/Int| = Q|j/JavaProtected|.R|j/JavaProtected.javaPProtectedStatic|
public final val p2: R|kotlin/Int| = Q|j/JavaProtected|.R|j/JavaProtected.javaPProtectedStatic*s|
public get(): R|kotlin/Int|
public final val p3: R|kotlin/Int| = this@R|k/B|.R|j/JavaProtected.javaPProtectedPackage|
public get(): R|kotlin/Int|
public final fun test(): R|kotlin/Unit| {
Q|j/JavaProtected|.R|j/JavaProtected.javaMProtectedStatic|()
Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaMPackage<HIDDEN: j/JavaPackageLocal.javaMPackage is invisible>#|()
Q|j/JavaProtected|.R|j/JavaProtected.javaMProtectedStatic*s|()
Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaMPackage*s<HIDDEN: j/JavaPackageLocal.javaMPackage is invisible>#|()
}
}
@@ -49,19 +49,19 @@ FILE: j.kt
super<R|kotlin/Any|>()
}
public final val p1: R|kotlin/Int| = Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaPPackage|
public final val p1: R|kotlin/Int| = Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaPPackage*s|
public get(): R|kotlin/Int|
public final val p2: R|kotlin/Int| = Q|j/JavaProtected|.R|j/JavaProtected.javaPProtectedStatic|
public final val p2: R|kotlin/Int| = Q|j/JavaProtected|.R|j/JavaProtected.javaPProtectedStatic*s|
public get(): R|kotlin/Int|
public final val p3: R|kotlin/Int| = R|j/JavaProtected.JavaProtected|().R|j/JavaProtected.javaPProtectedPackage|
public get(): R|kotlin/Int|
public final fun test(): R|kotlin/Unit| {
Q|j/JavaProtected|.R|j/JavaProtected.javaMProtectedStatic|()
Q|j/JavaProtected|.R|j/JavaProtected.javaMProtectedStatic|()
Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaMPackage|()
Q|j/JavaProtected|.R|j/JavaProtected.javaMProtectedStatic*s|()
Q|j/JavaProtected|.R|j/JavaProtected.javaMProtectedStatic*s|()
Q|j/JavaPackageLocal|.R|j/JavaPackageLocal.javaMPackage*s|()
}
}
@@ -7,6 +7,6 @@ FILE: K1.kt
}
FILE: K2.kt
public final fun main(): R|kotlin/Unit| {
Q|JavaClass|.R|/JavaClass.baz|(R|/KotlinClass.KotlinClass|())
Q|JavaClass|.R|/JavaClass.baz<Inapplicable(INAPPLICABLE): /JavaClass.baz>#|(String())
Q|JavaClass|.R|/JavaClass.baz*s|(R|/KotlinClass.KotlinClass|())
Q|JavaClass|.R|/JavaClass.baz*s<Inapplicable(INAPPLICABLE): /JavaClass.baz>#|(String())
}
@@ -7,8 +7,8 @@ FILE: K1.kt
}
FILE: K2.kt
public final fun main(): R|kotlin/Unit| {
Q|JavaClass|.R|/JavaClass.baz|(R|/KotlinClass.KotlinClass|<R|kotlin/Int!|>())
Q|JavaClass|.R|/JavaClass.baz|(R|/KotlinClass.KotlinClass|<R|kotlin/Int|>())
Q|JavaClass|.R|/JavaClass.baz<Inapplicable(INAPPLICABLE): /JavaClass.baz>#|(R|/KotlinClass.KotlinClass|<R|kotlin/String|>())
Q|JavaClass|.R|/JavaClass.baz<Inapplicable(INAPPLICABLE): /JavaClass.baz>#|(String())
Q|JavaClass|.R|/JavaClass.baz*s|(R|/KotlinClass.KotlinClass|<R|kotlin/Int!|>())
Q|JavaClass|.R|/JavaClass.baz*s|(R|/KotlinClass.KotlinClass|<R|kotlin/Int|>())
Q|JavaClass|.R|/JavaClass.baz*s<Inapplicable(INAPPLICABLE): /JavaClass.baz>#|(R|/KotlinClass.KotlinClass|<R|kotlin/String|>())
Q|JavaClass|.R|/JavaClass.baz*s<Inapplicable(INAPPLICABLE): /JavaClass.baz>#|(String())
}
@@ -1,6 +1,6 @@
FILE: test.kt
public final fun test(): R|kotlin/Unit| {
lval logger: R|Logger!| = Q|Logger|.R|/Logger.getInstance|(String(test))
lval logger: R|Logger!| = Q|Logger|.R|/Logger.getInstance*s|(String(test))
}
public final class MyTest : R|kotlin/Any| {
public constructor(): R|MyTest| {
@@ -10,7 +10,7 @@ FILE: test.kt
private final val klass: R|java/lang/Class<out MyTest>| = <getClass>(this@R|/MyTest|).R|kotlin/jvm/java|<R|CapturedType(out MyTest)|>
private get(): R|java/lang/Class<out MyTest>|
private final val logger: R|Logger!| = Q|Logger|.R|/Logger.getInstance|(this@R|/MyTest|.R|/MyTest.klass|)
private final val logger: R|Logger!| = Q|Logger|.R|/Logger.getInstance*s|(this@R|/MyTest|.R|/MyTest.klass|)
private get(): R|Logger!|
}
@@ -6,5 +6,5 @@ FILE: test.kt
}
public final fun test(list: R|kotlin/collections/ArrayList<Some>|): R|kotlin/Unit| {
Q|JavaClass|.R|/JavaClass.foo|(R|<local>/list|)
Q|JavaClass|.R|/JavaClass.foo*s|(R|<local>/list|)
}
@@ -1,5 +1,5 @@
FILE: main.kt
public final fun test(): R|kotlin/Unit| {
lval project: R|kotlin/String| = Q|PlatformDataKeys|.R|/CommonDataKeys.PROJECT|
lval project: R|kotlin/String| = Q|PlatformDataKeys|.R|/CommonDataKeys.PROJECT*s|
lval member: R|kotlin/String!| = R|/PlatformDataKeys.PlatformDataKeys|().R|/CommonDataKeys.MEMBER|
}
@@ -13,7 +13,7 @@ FILE: User.kt
protected abstract fun createSettings(): R|T|
public final fun foo(): R|kotlin/Unit| {
this@R|/User|.R|/User.settings| = Q|StaticOwner|.R|/StaticOwner.newInstance|<R|T!|>(this@R|/User|.R|/User.settings|.R|kotlin/jvm/javaClass|<R|T!|>)
this@R|/User|.R|/User.settings| = Q|StaticOwner|.R|/StaticOwner.newInstance*s|<R|T!|>(this@R|/User|.R|/User.settings|.R|kotlin/jvm/javaClass|<R|T!|>)
}
}
@@ -1,4 +1,4 @@
FILE: main.kt
public final fun bar(bindingContext: R|BindingContext|): R|kotlin/Unit| {
R|<local>/bindingContext|.R|/BindingContext.get|<R|kotlin/String!|, R|kotlin/Double!|>(Q|Slices|.R|/Slices.X|, R|<local>/bindingContext|.R|/BindingContext.get|<R|kotlin/Int!|, R|kotlin/String!|>(Q|Slices|.R|/Slices.Y|, Int(1)))
R|<local>/bindingContext|.R|/BindingContext.get|<R|kotlin/String!|, R|kotlin/Double!|>(Q|Slices|.R|/Slices.X*s|, R|<local>/bindingContext|.R|/BindingContext.get|<R|kotlin/Int!|, R|kotlin/String!|>(Q|Slices|.R|/Slices.Y*s|, Int(1)))
}
@@ -4,5 +4,5 @@ FILE: main.kt
public final typealias ImmutableLinkedHashSet<E> = R|imm/LinkedHashSet<E>|
private final typealias ImmutableMultimap<K, V> = R|ImmutableMap<K, ImmutableSet<V>>|
private final fun <K, V> R|ImmutableMultimap<K, V>|.put(key: R|K|, value: R|V|): R|kotlin/Unit| {
this@R|/put|.R|SubstitutionOverride<imm/Map.get: R|ft<imm/Option<ft<ImmutableSet<V>, ImmutableSet<V>?>>, imm/Option<ft<ImmutableSet<V>, ImmutableSet<V>?>>?>|>|(R|<local>/key|).R|SubstitutionOverride<imm/Option.getOrElse: R|ft<ImmutableSet<V>, ImmutableSet<V>?>|>|(Q|ImmutableLinkedHashSet|.R|imm/LinkedHashSet.empty|<R|V|>())
this@R|/put|.R|SubstitutionOverride<imm/Map.get: R|ft<imm/Option<ft<ImmutableSet<V>, ImmutableSet<V>?>>, imm/Option<ft<ImmutableSet<V>, ImmutableSet<V>?>>?>|>|(R|<local>/key|).R|SubstitutionOverride<imm/Option.getOrElse: R|ft<ImmutableSet<V>, ImmutableSet<V>?>|>|(Q|ImmutableLinkedHashSet|.R|imm/LinkedHashSet.empty*s|<R|V|>())
}