[FIR] Refactor effective visibility calculation

Before this commit, we had effective visibility as a part of FIR status,
so it was integrated into the full pipeline. In this commit,
we introduced "effective visibility as a service" which is now used
only by exposed visibility checker. This allows us to make the thing
universal for all FIR nodes, including nodes for Java / deserialized.
This commit is contained in:
Nick
2020-07-15 17:23:21 +03:00
committed by Mikhail Glukhikh
parent b15e32936e
commit 7145caca40
95 changed files with 713 additions and 484 deletions
@@ -259,3 +259,4 @@ public final class LongRange : R|kotlin/ranges/LongProgression|, R|kotlin/ranges
}
}
@@ -1,11 +1,11 @@
FILE: RedundantVisibilityModifierChecker.kt
public final fun f(): R|kotlin/Unit| {
local final class LocalClass : R|kotlin/Any| {
public[local] constructor(): R|LocalClass| {
public constructor(): R|LocalClass| {
super<R|kotlin/Any|>()
}
internal[local] final var foo: R|kotlin/Int| = Int(0)
internal final var foo: R|kotlin/Int| = Int(0)
internal get(): R|kotlin/Int|
internal set(value: R|kotlin/Int|): R|kotlin/Unit|
@@ -23,11 +23,11 @@ FILE: RedundantVisibilityModifierChecker.kt
}
internal final val z: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|kotlin/Int| {
public final fun foo(): R|kotlin/Int| {
^foo Int(13)
}
@@ -45,7 +45,7 @@ FILE: RedundantVisibilityModifierChecker.kt
}
internal final inner class B<T, T2, T1, T2 : R|T1|> : R|kotlin/Any| {
public[internal] constructor<T, T2>(): R|Foo2.B<T, T2, T1, T2>| {
public constructor<T, T2>(): R|Foo2.B<T, T2, T1, T2>| {
super<R|kotlin/Any|>()
}
@@ -97,7 +97,7 @@ FILE: RedundantVisibilityModifierChecker.kt
public get(): R|kotlin/Int|
public final static enum entry FIRST: R|F| = object : R|F| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|F|>(Int(42))
}
@@ -72,3 +72,4 @@ public final class Pub : R|kotlin/Any| {
}
}
@@ -87,3 +87,4 @@ public final class PubPub : R|kotlin/Any| {
}
}
@@ -2,3 +2,4 @@ internal final class InternalClass : R|kotlin/Any| {
public constructor(): R|test/InternalClass|
}
@@ -2,3 +2,4 @@ private final class PrivateClass : R|kotlin/Any| {
public constructor(): R|test/PrivateClass|
}
@@ -4,18 +4,18 @@ FILE: companionInvoke.kt
super<R|kotlin/Any|>()
}
public[internal] final val name: R|kotlin/String| = R|<local>/name|
public final val name: R|kotlin/String| = R|<local>/name|
public get(): R|kotlin/String|
public[internal] final val signature: R|T| = R|<local>/signature|
public final val signature: R|T| = R|<local>/signature|
public get(): R|T|
public[internal] final companion object Companion : R|kotlin/Any| {
public final companion object Companion : R|kotlin/Any| {
private constructor(): R|Method.Companion| {
super<R|kotlin/Any|>()
}
public[internal] final operator fun invoke(name: R|kotlin/String|): R|Method<kotlin/String?>| {
public final operator fun invoke(name: R|kotlin/String|): R|Method<kotlin/String?>| {
^invoke R|kotlin/TODO|()
}
@@ -13,7 +13,7 @@ FILE: annotatedLocalClass.kt
}
@R|Ann|() local final class Local : R|kotlin/Any| {
public[local] constructor(): R|Local| {
public constructor(): R|Local| {
super<R|kotlin/Any|>()
}
@@ -1,15 +1,15 @@
FILE: innerClassInAnonymousObject.kt
public final val x: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
local final class Nested : R|kotlin/Any| {
public[local] constructor(): R|<anonymous>.Nested| {
public constructor(): R|<anonymous>.Nested| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
}
}
@@ -10,11 +10,11 @@ FILE: localClassesWithImplicit.kt
}
local final class A : R|kotlin/Any| {
public[local] constructor(): R|A| {
public constructor(): R|A| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|kotlin/Int| {
public final fun foo(): R|kotlin/Int| {
^foo R|/myRun|<R|kotlin/Int|>(<L> = myRun@fun <anonymous>(): R|kotlin/Int| <kind=UNKNOWN> {
R|<local>/a|.R|kotlin/String.length|
^ when () {
@@ -31,7 +31,7 @@ FILE: localClassesWithImplicit.kt
)
}
public[local] final fun bar(): R|kotlin/Int| {
public final fun bar(): R|kotlin/Int| {
^bar R|/myRun|<R|kotlin/Int|>(<L> = myRun@fun <anonymous>(): R|kotlin/Int| <kind=UNKNOWN> {
R|<local>/b|.<Unresolved name: length>#
R|<local>/a|.R|kotlin/String.length|
@@ -40,18 +40,18 @@ FILE: localClassesWithImplicit.kt
)
}
public[local] final fun baz(): R|kotlin/Int| {
public final fun baz(): R|kotlin/Int| {
^baz Int(1)
}
}
lval x: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|kotlin/Int| {
public final fun foo(): R|kotlin/Int| {
^foo R|/myRun|<R|kotlin/Int|>(<L> = myRun@fun <anonymous>(): R|kotlin/Int| <kind=UNKNOWN> {
R|<local>/a|.R|kotlin/String.length|
^ when () {
@@ -68,7 +68,7 @@ FILE: localClassesWithImplicit.kt
)
}
public[local] final fun bar(): R|kotlin/Int| {
public final fun bar(): R|kotlin/Int| {
^bar R|/myRun|<R|kotlin/Int|>(<L> = myRun@fun <anonymous>(): R|kotlin/Int| <kind=UNKNOWN> {
R|<local>/a|.R|kotlin/String.length|
R|<local>/b|.<Unresolved name: length>#
@@ -77,7 +77,7 @@ FILE: localClassesWithImplicit.kt
)
}
public[local] final fun baz(): R|kotlin/Int| {
public final fun baz(): R|kotlin/Int| {
^baz Int(1)
}
@@ -18,7 +18,7 @@ FILE: propertiesAndInitBlocks.kt
}
local final class InitializerLocalClass : R|kotlin/Any| {
public[local] constructor(): R|InitializerLocalClass| {
public constructor(): R|InitializerLocalClass| {
super<R|kotlin/Any|>()
}
@@ -34,7 +34,7 @@ FILE: propertiesAndInitBlocks.kt
)
public get(): R|kotlin/Unit| {
local final class GetterLocalClass : R|kotlin/Any| {
public[local] constructor(): R|GetterLocalClass| {
public constructor(): R|GetterLocalClass| {
super<R|kotlin/Any|>()
}
@@ -11,7 +11,7 @@ FILE: anonymousObjectByDelegate.kt
object : R|B| {
local final field <$$delegate_0>: R|B|
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
this@R|/<anonymous>|.R|<local>/<$$delegate_0>| = this@R|/test_1|.R|/A.b|
}
@@ -23,7 +23,7 @@ FILE: anonymousObjectByDelegate.kt
object : R|B| {
local final field <$$delegate_0>: R|B|
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
this@R|/<anonymous>|.R|<local>/<$$delegate_0>| = this@R|/test_2|.R|/A.b|
}
@@ -6,13 +6,13 @@ FILE: incompatibleModifiers.kt
}
private final class B : R|kotlin/Any| {
public[private] constructor(): R|B| {
public constructor(): R|B| {
super<R|kotlin/Any|>()
}
}
protected final class C : R|kotlin/Any| {
public[protected] constructor(): R|C| {
public constructor(): R|C| {
super<R|kotlin/Any|>()
}
@@ -95,13 +95,13 @@ FILE: incompatibleModifiers.kt
}
private open class L : R|K| {
public[private] constructor(): R|L| {
public constructor(): R|L| {
super<R|K|>()
}
}
private abstract class M : R|K| {
public[private] constructor(): R|M| {
public constructor(): R|M| {
super<R|K|>()
}
@@ -1,19 +1,19 @@
FILE: localAnnotationClass.kt
public final fun foo(): R|kotlin/Unit| {
local final annotation class Ann : R|kotlin/Annotation| {
public[local] constructor(): R|Ann| {
public constructor(): R|Ann| {
super<R|kotlin/Any|>()
}
}
@R|ERROR CLASS: Symbol not found, for `Anno`|() local final class Local : R|kotlin/Any| {
public[local] constructor(): R|Local| {
public constructor(): R|Local| {
super<R|kotlin/Any|>()
}
local final annotation class Nested : R|kotlin/Annotation| {
public[local] constructor(): R|Local.Nested| {
public constructor(): R|Local.Nested| {
super<R|kotlin/Any|>()
}
+9 -9
View File
@@ -22,22 +22,22 @@ FILE: enum.kt
public get(): R|Some|
public final static enum entry FIRST: R|SomeEnum| = object : R|SomeEnum| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|SomeEnum|>(Q|O1|)
}
public[local] final override fun check(y: R|Some|): R|kotlin/Boolean| {
public final override fun check(y: R|Some|): R|kotlin/Boolean| {
^check Boolean(true)
}
}
public final static enum entry SECOND: R|SomeEnum| = object : R|SomeEnum| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|SomeEnum|>(Q|O2|)
}
public[local] final override fun check(y: R|Some|): R|kotlin/Boolean| {
public final override fun check(y: R|Some|): R|kotlin/Boolean| {
^check ==(R|<local>/y|, Q|O2|)
}
@@ -71,28 +71,28 @@ FILE: enum.kt
}
public final static enum entry E1: R|EnumClass| = object : R|EnumClass| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|EnumClass|>()
}
public[local] final override fun foo(): R|kotlin/Int| {
public final override fun foo(): R|kotlin/Int| {
^foo Int(1)
}
public[local] final override val bar: R|kotlin/String| = String(a)
public final override val bar: R|kotlin/String| = String(a)
public get(): R|kotlin/String|
}
public final static enum entry E2: R|EnumClass| = object : R|EnumClass| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|EnumClass|>()
}
}
public final static enum entry E3: R|EnumClass| = object : R|EnumClass| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|EnumClass|>()
}
@@ -30,16 +30,16 @@ FILE: CallBasedInExpressionGenerator.kt
private final fun gen(argument: R|ERROR CLASS: Symbol not found, for `StackValue`|): R|ERROR CLASS: Symbol not found, for `BranchedValue`| {
^gen object : R|ERROR CLASS: Symbol not found, for `BranchedValue`| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|ERROR CLASS: Symbol not found, for `BranchedValue`|>(R|<local>/argument|, Null(null), R|<local>/argument|.<Unresolved name: type>#, <Unresolved name: Opcodes>#.<Unresolved name: IFEQ>#)
}
public[local] final override fun putSelector(type: R|ERROR CLASS: Symbol not found, for `Type`|, kotlinType: R|ERROR CLASS: Symbol not found, for `KotlinType?`|, v: R|ERROR CLASS: Symbol not found, for `InstructionAdapter`|): R|kotlin/Unit| {
public final override fun putSelector(type: R|ERROR CLASS: Symbol not found, for `Type`|, kotlinType: R|ERROR CLASS: Symbol not found, for `KotlinType?`|, v: R|ERROR CLASS: Symbol not found, for `InstructionAdapter`|): R|kotlin/Unit| {
this@R|/<anonymous>|.R|/<anonymous>.invokeFunction|(R|<local>/v|)
<Unresolved name: coerceTo>#(R|<local>/type|, R|<local>/kotlinType|, R|<local>/v|)
}
public[local] final override fun condJump(jumpLabel: R|ERROR CLASS: Symbol not found, for `Label`|, v: R|ERROR CLASS: Symbol not found, for `InstructionAdapter`|, jumpIfFalse: R|kotlin/Boolean|): R|kotlin/Unit| {
public final override fun condJump(jumpLabel: R|ERROR CLASS: Symbol not found, for `Label`|, v: R|ERROR CLASS: Symbol not found, for `InstructionAdapter`|, jumpIfFalse: R|kotlin/Boolean|): R|kotlin/Unit| {
this@R|/<anonymous>|.R|/<anonymous>.invokeFunction|(R|<local>/v|)
R|<local>/v|.<Unresolved name: visitJumpInsn>#(when () {
R|<local>/jumpIfFalse| -> {
@@ -52,7 +52,7 @@ FILE: CallBasedInExpressionGenerator.kt
, R|<local>/jumpLabel|)
}
private[local] final fun invokeFunction(v: R|ERROR CLASS: Symbol not found, for `InstructionAdapter`|): R|kotlin/Unit| {
private final fun invokeFunction(v: R|ERROR CLASS: Symbol not found, for `InstructionAdapter`|): R|kotlin/Unit| {
lval result: <ERROR TYPE REF: Unresolved name: invokeFunction> = this@R|org/jetbrains/kotlin/codegen/range/inExpression/CallBasedInExpressionGenerator|.R|org/jetbrains/kotlin/codegen/range/inExpression/CallBasedInExpressionGenerator.codegen|.<Unresolved name: invokeFunction>#(this@R|org/jetbrains/kotlin/codegen/range/inExpression/CallBasedInExpressionGenerator|.R|org/jetbrains/kotlin/codegen/range/inExpression/CallBasedInExpressionGenerator.resolvedCall|.<Unresolved name: call>#, this@R|org/jetbrains/kotlin/codegen/range/inExpression/CallBasedInExpressionGenerator|.R|org/jetbrains/kotlin/codegen/range/inExpression/CallBasedInExpressionGenerator.resolvedCall|, <Unresolved name: none>#())
R|<local>/result|.<Unresolved name: put>#(R|<local>/result|.<Unresolved name: type>#, R|<local>/result|.<Unresolved name: kotlinType>#, R|<local>/v|)
}
@@ -7,11 +7,11 @@ FILE: enumEntryUse.kt
public final static enum entry FIRST: R|TestEnum|
public final static enum entry SECOND: R|TestEnum|
public final static enum entry THIRD: R|TestEnum| = object : R|TestEnum| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|TestEnum|>()
}
public[local] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
}
}
@@ -6,11 +6,11 @@ FILE: localClassAccessesContainingClass.kt
public final fun foo(): R|kotlin/Unit| {
local final class Local : R|kotlin/Any| {
public[local] constructor(): R|Outer.Local| {
public constructor(): R|Outer.Local| {
super<R|kotlin/Any|>()
}
public[local] final fun bar(): R|kotlin/Unit| {
public final fun bar(): R|kotlin/Unit| {
lval x: R|kotlin/String| = this@R|/Outer|.R|/Outer.y|
}
@@ -1,7 +1,7 @@
FILE: localConstructor.kt
public final fun test(): R|kotlin/Unit| {
local final class Local : R|kotlin/Any| {
public[local] constructor(): R|Local| {
public constructor(): R|Local| {
super<R|kotlin/Any|>()
}
@@ -1,15 +1,15 @@
FILE: localImplicitBodies.kt
public final fun foo(): R|kotlin/Unit| {
lval x: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final fun sss(): R|kotlin/Int| {
public final fun sss(): R|kotlin/Int| {
^sss this@R|/<anonymous>|.R|/<anonymous>.abc|()
}
public[local] final fun abc(): R|kotlin/Int| {
public final fun abc(): R|kotlin/Int| {
^abc Int(1)
}
@@ -3,20 +3,20 @@ FILE: localInnerClass.kt
}
public final fun bar(): R|kotlin/Unit| {
object : R|Foo| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|Foo| {
public final fun foo(): R|Foo| {
^foo this@R|/<anonymous>|.R|/<anonymous>.Derived.Derived|(Int(42))
}
local final inner class Derived : R|Foo| {
public[local] constructor(x: R|kotlin/Int|): R|<anonymous>.Derived| {
public constructor(x: R|kotlin/Int|): R|<anonymous>.Derived| {
super<R|kotlin/Any|>()
}
public[local] final val x: R|kotlin/Int| = R|<local>/x|
public final val x: R|kotlin/Int| = R|<local>/x|
public get(): R|kotlin/Int|
}
@@ -21,7 +21,7 @@ FILE: localObjects.kt
public final fun test(): R|kotlin/Unit| {
Q|A|.R|/A.x|
lval b: R|<anonymous>| = object : R|Foo| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Foo|>()
}
@@ -29,11 +29,11 @@ FILE: localObjects.kt
R|<local>/b|.R|/Foo.foo|()
local final object B : R|kotlin/Any| {
private[local] constructor(): R|B| {
private constructor(): R|B| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
}
}
@@ -10,11 +10,11 @@ FILE: localScopes.kt
}
public final fun test(): R|kotlin/Unit| {
local open class BaseLocal : R|Bar| {
public[local] constructor(): R|BaseLocal| {
public constructor(): R|BaseLocal| {
super<R|Bar|>()
}
public[local] final fun baz(): R|kotlin/Unit| {
public final fun baz(): R|kotlin/Unit| {
}
}
@@ -23,11 +23,11 @@ FILE: localScopes.kt
R|<local>/base|.R|/BaseLocal.baz|()
R|<local>/base|.R|/Bar.foo|()
lval anonymous: R|<anonymous>| = object : R|Bar| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Bar|>()
}
public[local] final fun baz(): R|kotlin/Unit| {
public final fun baz(): R|kotlin/Unit| {
}
}
@@ -35,11 +35,11 @@ FILE: localScopes.kt
R|<local>/anonymous|.R|/<anonymous>.baz|()
R|<local>/anonymous|.R|/Bar.foo|()
local final class DerivedLocal : R|BaseLocal| {
public[local] constructor(): R|DerivedLocal| {
public constructor(): R|DerivedLocal| {
super<R|BaseLocal|>()
}
public[local] final fun gau(): R|kotlin/Unit| {
public final fun gau(): R|kotlin/Unit| {
}
}
@@ -4,24 +4,24 @@ FILE: localTypes.kt
public final fun foo(): R|kotlin/Unit| {
lval x: R|kotlin/Int| = Int(1)
local final class Bar : R|Foo| {
public[local] constructor(): R|Bar| {
public constructor(): R|Bar| {
super<R|kotlin/Any|>()
}
public[local] final val y: R|kotlin/String| = String()
public final val y: R|kotlin/String| = String()
public get(): R|kotlin/String|
public[local] final fun R|kotlin/Int|.bar(s: R|kotlin/String|): R|kotlin/Boolean| {
public final fun R|kotlin/Int|.bar(s: R|kotlin/String|): R|kotlin/Boolean| {
lval z: R|kotlin/Double| = Double(0.0)
^bar Boolean(true)
}
public[local] final val R|kotlin/Boolean|.w: R|kotlin/Char|
public final val R|kotlin/Boolean|.w: R|kotlin/Char|
public get(): R|kotlin/Char| {
^ Char( )
}
public[local] final fun <T : R|Foo|> id(arg: R|T|): R|T| {
public final fun <T : R|Foo|> id(arg: R|T|): R|T| {
^id R|<local>/arg|
}
@@ -1,19 +1,19 @@
FILE: foo.kt
public final fun foo(): R|kotlin/Boolean| {
object : R|Node<kotlin/Boolean>| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
private[local] final var result: R|kotlin/Boolean| = Boolean(false)
private final var result: R|kotlin/Boolean| = Boolean(false)
private get(): R|kotlin/Boolean|
private set(value: R|kotlin/Boolean|): R|kotlin/Unit|
public[local] final fun bar(): R|kotlin/Boolean| {
public final fun bar(): R|kotlin/Boolean| {
^bar this@R|/<anonymous>|.R|/<anonymous>.result|.R|kotlin/Boolean.not|()
}
public[local] final override fun result(): R|kotlin/Boolean| {
public final override fun result(): R|kotlin/Boolean| {
^result this@R|/<anonymous>|.R|/<anonymous>.result|
}
@@ -5,28 +5,28 @@ FILE: nestedVisibility.kt
}
private final class PrivateNested : R|kotlin/Any| {
public[private] constructor(): R|Outer.PrivateNested| {
public constructor(): R|Outer.PrivateNested| {
super<R|kotlin/Any|>()
}
}
private final inner class PrivateInner : R|kotlin/Any| {
public[private] constructor(): R|Outer.PrivateInner| {
public constructor(): R|Outer.PrivateInner| {
super<R|kotlin/Any|>()
}
}
protected final class ProtectedNested : R|kotlin/Any| {
public[protected] constructor(): R|Outer.ProtectedNested| {
public constructor(): R|Outer.ProtectedNested| {
super<R|kotlin/Any|>()
}
}
protected final inner class ProtectedInner : R|kotlin/Any| {
public[protected] constructor(): R|Outer.ProtectedInner| {
public constructor(): R|Outer.ProtectedInner| {
super<R|kotlin/Any|>()
}
@@ -14,7 +14,7 @@ FILE: O.kt
}
private final class Derived : R|Base| {
public[private] constructor(bar: R|kotlin/Int|): R|O.Derived| {
public constructor(bar: R|kotlin/Int|): R|O.Derived| {
super<R|Base|>()
}
@@ -22,30 +22,30 @@ FILE: O.kt
private get(): R|kotlin/Int|
private final inner class Some : R|kotlin/Any| {
public[private] constructor(z: R|kotlin/Boolean|): R|O.Derived.Some| {
public constructor(z: R|kotlin/Boolean|): R|O.Derived.Some| {
super<R|kotlin/Any|>()
}
public[private] final val z: R|kotlin/Boolean| = R|<local>/z|
public final val z: R|kotlin/Boolean| = R|<local>/z|
public get(): R|kotlin/Boolean|
public[private] final fun test(): R|kotlin/Unit| {
public final fun test(): R|kotlin/Unit| {
lval x: R|kotlin/Int| = this@R|/O.Derived|.R|/O.Derived.bar|
lval o: R|<anonymous>| = object : R|Wrapper| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Wrapper|>(this@R|/O.Derived.Some|.R|/O.Derived.Some.z|)
}
public[local] final fun local(): R|kotlin/Unit| {
public final fun local(): R|kotlin/Unit| {
lval y: R|ft<kotlin/String, kotlin/String?>!| = this@R|/O.Derived|.R|/Base.foo|()
}
public[local] final val oo: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
public final val oo: R|<anonymous>| = object : R|kotlin/Any| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final val zz: R|kotlin/Boolean| = this@R|/O.Derived.Some|.R|/O.Derived.Some.z|
public final val zz: R|kotlin/Boolean| = this@R|/O.Derived.Some|.R|/O.Derived.Some.z|
public get(): R|kotlin/Boolean|
}
@@ -58,14 +58,14 @@ FILE: O.kt
}
public[private] final fun test(): R|kotlin/Unit| {
public final fun test(): R|kotlin/Unit| {
lval x: R|kotlin/Int| = this@R|/O.Derived|.R|/O.Derived.bar|
lval o: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final fun local(): R|kotlin/Unit| {
public final fun local(): R|kotlin/Unit| {
lval y: R|ft<kotlin/String, kotlin/String?>!| = this@R|/O.Derived|.R|/Base.foo|()
}
@@ -86,11 +86,11 @@ FILE: O.kt
private final fun gen(): R|kotlin/Any| {
^gen object : R|Wrapper| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Wrapper|>(Boolean(true))
}
private[local] final fun invokeFunction(): R|kotlin/Unit| {
private final fun invokeFunction(): R|kotlin/Unit| {
lval c: R|kotlin/Any| = this@R|/Generator|.R|/Generator.codegen|
lval cc: R|kotlin/Int| = this@R|/Generator|.R|/Generator.codegen|.R|kotlin/Any.hashCode|()
}
@@ -5,11 +5,11 @@ FILE: privateObjectLiteral.kt
}
private final val x: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|kotlin/Int| {
public final fun foo(): R|kotlin/Int| {
^foo Int(42)
}
@@ -21,11 +21,11 @@ FILE: privateObjectLiteral.kt
public get(): R|kotlin/Int|
internal final val z: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|kotlin/Int| {
public final fun foo(): R|kotlin/Int| {
^foo Int(13)
}
@@ -2,26 +2,26 @@ FILE: first.kt
private final fun foo(): R|kotlin/Unit| {
}
private final class Private : R|kotlin/Any| {
public[private] constructor(): R|Private| {
public constructor(): R|Private| {
super<R|kotlin/Any|>()
}
private final fun bar(): R|kotlin/Unit| {
}
public[private] final fun baz(): R|kotlin/Unit| {
public final fun baz(): R|kotlin/Unit| {
this@R|/Private|.R|/Private.bar|()
R|/Private.Nested.Nested|()
this@R|/Private.Companion|.R|/Private.Companion.fromCompanion|()
Q|Private.NotCompanion|.<HIDDEN: /Private.NotCompanion.foo is invisible>#()
}
public[private] final inner class Inner : R|kotlin/Any| {
public[private] constructor(): R|Private.Inner| {
public final inner class Inner : R|kotlin/Any| {
public constructor(): R|Private.Inner| {
super<R|kotlin/Any|>()
}
public[private] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
this@R|/Private|.R|/Private.bar|()
this@R|/Private.Companion|.R|/Private.Companion.fromCompanion|()
Q|Private.NotCompanion|.<HIDDEN: /Private.NotCompanion.foo is invisible>#()
@@ -30,18 +30,18 @@ FILE: first.kt
}
private final class Nested : R|kotlin/Any| {
public[private] constructor(): R|Private.Nested| {
public constructor(): R|Private.Nested| {
super<R|kotlin/Any|>()
}
public[private] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
this@R|/Private.Companion|.R|/Private.Companion.fromCompanion|()
Q|Private.NotCompanion|.<HIDDEN: /Private.NotCompanion.foo is invisible>#()
}
}
public[private] final companion object Companion : R|kotlin/Any| {
public final companion object Companion : R|kotlin/Any| {
private constructor(): R|Private.Companion| {
super<R|kotlin/Any|>()
}
@@ -51,7 +51,7 @@ FILE: first.kt
}
public[private] final object NotCompanion : R|kotlin/Any| {
public final object NotCompanion : R|kotlin/Any| {
private constructor(): R|Private.NotCompanion| {
super<R|kotlin/Any|>()
}
@@ -64,23 +64,23 @@ FILE: first.kt
}
public final fun withLocals(): R|kotlin/Unit| {
local final class Local : R|kotlin/Any| {
public[local] constructor(): R|Local| {
public constructor(): R|Local| {
super<R|kotlin/Any|>()
}
private[local] final fun bar(): R|kotlin/Unit|
private final fun bar(): R|kotlin/Unit|
public[local] final fun baz(): R|kotlin/Unit| {
public final fun baz(): R|kotlin/Unit| {
this@R|/Local|.R|/Local.bar|()
this@R|/Local|.R|/Local.Inner.Inner|()
}
local final inner class Inner : R|kotlin/Any| {
public[local] constructor(): R|Local.Inner| {
public constructor(): R|Local.Inner| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
this@R|/Local|.R|/Local.bar|()
}
@@ -24,11 +24,11 @@ FILE: protectedVisibility.kt
}
protected open class Nested : R|kotlin/Any| {
public[protected] constructor(): R|Protected.Nested| {
public constructor(): R|Protected.Nested| {
super<R|kotlin/Any|>()
}
public[protected] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
this@R|/Protected.Nested|.R|/Protected.Nested.bar|()
}
@@ -42,7 +42,7 @@ FILE: protectedVisibility.kt
super<R|kotlin/Any|>()
}
public[protected] final fun fromCompanion(): R|kotlin/Unit| {
public final fun fromCompanion(): R|kotlin/Unit| {
}
protected final fun protectedFromCompanion(): R|kotlin/Unit| {
@@ -65,11 +65,11 @@ FILE: protectedVisibility.kt
}
private final class NestedDerived : R|Protected.Nested| {
public[private] constructor(): R|Derived.NestedDerived| {
public constructor(): R|Derived.NestedDerived| {
super<R|Protected.Nested|>()
}
public[private] final fun use(): R|kotlin/Unit| {
public final fun use(): R|kotlin/Unit| {
this@R|/Derived.NestedDerived|.R|/Protected.Nested.bar|()
}
@@ -26,33 +26,33 @@ FILE: enums.kt
internal get(): R|kotlin/Double|
public final static enum entry MERCURY: R|Planet| = object : R|Planet| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Planet|>(Double(1.0), Double(2.0))
}
public[local] final override fun sayHello(): R|kotlin/Unit| {
public final override fun sayHello(): R|kotlin/Unit| {
<Unresolved name: println>#(String(Hello!!!))
}
}
public final static enum entry VENERA: R|Planet| = object : R|Planet| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Planet|>(Double(3.0), Double(4.0))
}
public[local] final override fun sayHello(): R|kotlin/Unit| {
public final override fun sayHello(): R|kotlin/Unit| {
<Unresolved name: println>#(String(Ola!!!))
}
}
public final static enum entry EARTH: R|Planet| = object : R|Planet| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Planet|>(Double(5.0), Double(6.0))
}
public[local] final override fun sayHello(): R|kotlin/Unit| {
public final override fun sayHello(): R|kotlin/Unit| {
<Unresolved name: println>#(String(Privet!!!))
}
@@ -4,11 +4,11 @@ FILE: callableReferenceToLocalClass.kt
}
public final fun test_1(): R|kotlin/Unit| {
local final class Data : R|kotlin/Any| {
public[local] constructor(x: R|kotlin/Int|): R|Data| {
public constructor(x: R|kotlin/Int|): R|Data| {
super<R|kotlin/Any|>()
}
public[local] final val x: R|kotlin/Int| = R|<local>/x|
public final val x: R|kotlin/Int| = R|<local>/x|
public get(): R|kotlin/Int|
}
@@ -1,23 +1,23 @@
FILE: implicitInAnonymous.kt
private final val x: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(x: R|kotlin/Int|): R|kotlin/Boolean| {
public final fun foo(x: R|kotlin/Int|): R|kotlin/Boolean| {
^foo this@R|/<anonymous>|.R|/<anonymous>.bar|(R|<local>/x|)
}
public[local] final fun bar(y: R|kotlin/Int|): R|kotlin/Boolean| {
public final fun bar(y: R|kotlin/Int|): R|kotlin/Boolean| {
^bar CMP(>, this@R|/<anonymous>|.R|kotlin/Any.hashCode|().R|kotlin/Int.plus|(R|<local>/y|).R|kotlin/Int.compareTo|(Int(0)))
}
public[local] final val w: R|kotlin/Boolean|
public final val w: R|kotlin/Boolean|
public get(): R|kotlin/Boolean| {
^ this@R|/<anonymous>|.R|/<anonymous>.z|
}
public[local] final val z: R|kotlin/Boolean|
public final val z: R|kotlin/Boolean|
public get(): R|kotlin/Boolean| {
^ ==(this@R|/<anonymous>|.R|kotlin/Any.hashCode|(), Int(0))
}
@@ -3,24 +3,24 @@ FILE: implicitInLocalClasses.kt
}
public final fun main(): R|kotlin/Unit| {
local final class A : R|kotlin/Any| {
public[local] constructor(): R|A| {
public constructor(): R|A| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(x: R|kotlin/Int|): R|kotlin/Boolean| {
public final fun foo(x: R|kotlin/Int|): R|kotlin/Boolean| {
^foo this@R|/A|.R|/A.bar|(R|<local>/x|)
}
public[local] final fun bar(y: R|kotlin/Int|): R|kotlin/Boolean| {
public final fun bar(y: R|kotlin/Int|): R|kotlin/Boolean| {
^bar CMP(>, this@R|/A|.R|kotlin/Any.hashCode|().R|kotlin/Int.plus|(R|<local>/y|).R|kotlin/Int.compareTo|(Int(0)))
}
public[local] final val w: R|kotlin/Boolean|
public final val w: R|kotlin/Boolean|
public get(): R|kotlin/Boolean| {
^ this@R|/A|.R|/A.z|
}
public[local] final val z: R|kotlin/Boolean|
public final val z: R|kotlin/Boolean|
public get(): R|kotlin/Boolean| {
^ ==(this@R|/A|.R|kotlin/Any.hashCode|(), Int(0))
}
@@ -33,32 +33,32 @@ FILE: implicitInLocalClasses.kt
R|/useBoolean|(R|<local>/a|.R|/A.w|)
R|/useBoolean|(R|<local>/a|.R|/A.z|)
local final class B : R|kotlin/Any| {
public[local] constructor(): R|B| {
public constructor(): R|B| {
super<R|kotlin/Any|>()
}
public[local] final fun foo(x: R|kotlin/Int|): R|kotlin/Boolean| {
public final fun foo(x: R|kotlin/Int|): R|kotlin/Boolean| {
^foo this@R|/B|.R|/B.inner|.R|/B.Inner.w|
}
public[local] final fun bar(y: R|kotlin/Int|): R|kotlin/Boolean| {
public final fun bar(y: R|kotlin/Int|): R|kotlin/Boolean| {
^bar CMP(>, this@R|/B|.R|kotlin/Any.hashCode|().R|kotlin/Int.plus|(R|<local>/y|).R|kotlin/Int.compareTo|(Int(0)))
}
public[local] final val inner: R|B.Inner| = this@R|/B|.R|/B.Inner.Inner|()
public final val inner: R|B.Inner| = this@R|/B|.R|/B.Inner.Inner|()
public get(): R|B.Inner|
local final inner class Inner : R|kotlin/Any| {
public[local] constructor(): R|B.Inner| {
public constructor(): R|B.Inner| {
super<R|kotlin/Any|>()
}
public[local] final val w: R|kotlin/Boolean|
public final val w: R|kotlin/Boolean|
public get(): R|kotlin/Boolean| {
^ this@R|/B.Inner|.R|/B.Inner.z|
}
public[local] final val z: R|kotlin/Boolean|
public final val z: R|kotlin/Boolean|
public get(): R|kotlin/Boolean| {
^ this@R|/B|.R|/B.bar|(Int(1))
}
@@ -12,11 +12,11 @@ FILE: typesFromSuperClasses.kt
}
public final fun main(): R|kotlin/Unit| {
object : R|Outer| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Outer|>()
}
public[local] final fun foo(n: R|Outer.Nested|): R|kotlin/Unit| {
public final fun foo(n: R|Outer.Nested|): R|kotlin/Unit| {
R|<local>/n|.R|/Outer.Nested.bar|()
}
@@ -9,11 +9,11 @@ FILE: localObject.kt
public final fun tesLambda(x: R|kotlin/Int|): R|kotlin/Int| {
^tesLambda R|/run|<R|kotlin/Int|>(<L> = run@fun <anonymous>(): R|kotlin/Int| {
lval obj: R|<anonymous>| = object : R|Foo| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final override fun foo(): R|kotlin/Int| {
public final override fun foo(): R|kotlin/Int| {
^foo R|<local>/x|.R|kotlin/Int.plus|(Int(1))
}
@@ -35,11 +35,11 @@ FILE: localObject.kt
public get(): R|kotlin/Int|
public set(value: R|kotlin/Int|): R|kotlin/Unit| {
lval obj: R|<anonymous>| = object : R|Foo| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final override fun foo(): R|kotlin/Int| {
public final override fun foo(): R|kotlin/Int| {
^foo this@R|/TestProperty|.R|/TestProperty.intConst|.R|kotlin/Int.plus|(Int(1))
}
@@ -51,11 +51,11 @@ FILE: localObject.kt
public final val y: R|kotlin/Int|
public get(): R|kotlin/Int| {
lval obj: R|<anonymous>| = object : R|Foo| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final override fun foo(): R|kotlin/Int| {
public final override fun foo(): R|kotlin/Int| {
^foo this@R|/TestProperty|.R|/TestProperty.intConst|.R|kotlin/Int.plus|(Int(1))
}
@@ -66,11 +66,11 @@ FILE: localObject.kt
public final val z: R|kotlin/Int| = this@R|/TestProperty|.R|kotlin/run|<R|TestProperty|, R|kotlin/Int|>(<L> = run@fun R|TestProperty|.<anonymous>(): R|kotlin/Int| <kind=EXACTLY_ONCE> {
lval obj: R|<anonymous>| = object : R|Foo| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final override fun foo(): R|kotlin/Int| {
public final override fun foo(): R|kotlin/Int| {
^foo this@R|special/anonymous|.R|/TestProperty.x|.R|kotlin/Int.plus|(Int(1))
}
@@ -1,19 +1,19 @@
FILE: objectInnerClass.kt
public final val case1: R|<anonymous>| = object : R|A| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
local final inner class Child : R|<anonymous>.Base| {
public[local] constructor(property: R|B|): R|<anonymous>.Child| {
public constructor(property: R|B|): R|<anonymous>.Child| {
this@R|/<anonymous>|.super<R|<anonymous>.Base|>(R|<local>/property|)
}
public[local] final fun R|<anonymous>.Base|.zoo(): R|kotlin/Unit| {
public final fun R|<anonymous>.Base|.zoo(): R|kotlin/Unit| {
lval x: R|B| = this@R|/<anonymous>.Child.zoo|.R|/<anonymous>.Base.property|
}
public[local] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
this@R|/<anonymous>.Child|.R|/<anonymous>.Base.baseFun|()
lval x: R|B| = this@R|/<anonymous>.Child|.R|/<anonymous>.Base.property|
(this@R|/<anonymous>.Child|, this@R|/<anonymous>.Child|).R|/<anonymous>.Child.zoo|()
@@ -22,35 +22,35 @@ FILE: objectInnerClass.kt
}
public[local] final fun R|<anonymous>.Child|.voo(): R|kotlin/Unit| {
public final fun R|<anonymous>.Child|.voo(): R|kotlin/Unit| {
lval x: R|B| = this@R|/<anonymous>.voo|.R|/<anonymous>.Base.property|
}
public[local] final fun R|<anonymous>.Base|.hoo(): R|kotlin/Unit| {
public final fun R|<anonymous>.Base|.hoo(): R|kotlin/Unit| {
lval x: R|B| = this@R|/<anonymous>.hoo|.R|/<anonymous>.Base.property|
}
local open inner class Base : R|kotlin/Any| {
public[local] constructor(property: R|B|): R|<anonymous>.Base| {
public constructor(property: R|B|): R|<anonymous>.Base| {
super<R|kotlin/Any|>()
}
public[local] final val property: R|B| = R|<local>/property|
public final val property: R|B| = R|<local>/property|
public get(): R|B|
public[local] final fun baseFun(): R|kotlin/Unit| {
public final fun baseFun(): R|kotlin/Unit| {
}
}
public[local] final fun caseForBase(): R|kotlin/Unit| {
public final fun caseForBase(): R|kotlin/Unit| {
lval base: R|<anonymous>.Base| = this@R|/<anonymous>|.R|/<anonymous>.Base.Base|(R|/B.B|())
R|<local>/base|.R|/<anonymous>.Base.baseFun|()
R|<local>/base|.R|/<anonymous>.Base.property|
(this@R|/<anonymous>|, R|<local>/base|).R|/<anonymous>.hoo|()
}
public[local] final fun caseForChild(): R|kotlin/Unit| {
public final fun caseForChild(): R|kotlin/Unit| {
lval child: R|<anonymous>.Child| = this@R|/<anonymous>|.R|/<anonymous>.Child.Child|(R|/B.B|())
R|<local>/child|.R|/<anonymous>.Base.baseFun|()
R|<local>/child|.R|/<anonymous>.Base.property|
@@ -68,15 +68,15 @@ FILE: objectInnerClass.kt
}
public final val x: R|<anonymous>| = object : R|Case2.Base| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
this@R|/Case2|.super<R|Case2.Base|>(R|/B.B|())
}
public[local] final fun R|Case2.Base|.zoo(): R|kotlin/Unit| {
public final fun R|Case2.Base|.zoo(): R|kotlin/Unit| {
lval x: R|B| = this@R|/<anonymous>.zoo|.R|/Case2.Base.property|
}
public[local] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
this@R|/<anonymous>|.R|/Case2.Base.baseFun|()
lval x: R|B| = this@R|/<anonymous>|.R|/Case2.Base.property|
(this@R|/<anonymous>|, this@R|/<anonymous>|).R|/<anonymous>.zoo|()
@@ -125,20 +125,20 @@ FILE: objectInnerClass.kt
}
public final val x: R|<anonymous>| = object : R|A| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
local final inner class Child : R|Case3.<anonymous>.Base| {
public[local] constructor(property: R|B|): R|Case3.<anonymous>.Child| {
public constructor(property: R|B|): R|Case3.<anonymous>.Child| {
this@R|/<anonymous>|.super<R|Case3.<anonymous>.Base|>(R|<local>/property|)
}
public[local] final fun R|Case3.<anonymous>.Base|.zoo(): R|kotlin/Unit| {
public final fun R|Case3.<anonymous>.Base|.zoo(): R|kotlin/Unit| {
lval x: R|B| = this@R|/Case3.<anonymous>.Child.zoo|.R|/Case3.<anonymous>.Base.property|
}
public[local] final fun foo(): R|kotlin/Unit| {
public final fun foo(): R|kotlin/Unit| {
this@R|/Case3.<anonymous>.Child|.R|/Case3.<anonymous>.Base.baseFun|()
lval x: R|B| = this@R|/Case3.<anonymous>.Child|.R|/Case3.<anonymous>.Base.property|
(this@R|/Case3.<anonymous>.Child|, this@R|/Case3.<anonymous>.Child|).R|/Case3.<anonymous>.Child.zoo|()
@@ -147,35 +147,35 @@ FILE: objectInnerClass.kt
}
public[local] final fun R|Case3.<anonymous>.Child|.voo(): R|kotlin/Unit| {
public final fun R|Case3.<anonymous>.Child|.voo(): R|kotlin/Unit| {
lval x: R|B| = this@R|/<anonymous>.voo|.R|/Case3.<anonymous>.Base.property|
}
public[local] final fun R|Case3.<anonymous>.Base|.hoo(): R|kotlin/Unit| {
public final fun R|Case3.<anonymous>.Base|.hoo(): R|kotlin/Unit| {
lval x: R|B| = this@R|/<anonymous>.hoo|.R|/Case3.<anonymous>.Base.property|
}
local open inner class Base : R|kotlin/Any| {
public[local] constructor(property: R|B|): R|Case3.<anonymous>.Base| {
public constructor(property: R|B|): R|Case3.<anonymous>.Base| {
super<R|kotlin/Any|>()
}
public[local] final val property: R|B| = R|<local>/property|
public final val property: R|B| = R|<local>/property|
public get(): R|B|
public[local] final fun baseFun(): R|kotlin/Unit| {
public final fun baseFun(): R|kotlin/Unit| {
}
}
public[local] final fun caseForBase(): R|kotlin/Unit| {
public final fun caseForBase(): R|kotlin/Unit| {
lval base: R|Case3.<anonymous>.Base| = this@R|/<anonymous>|.R|/Case3.<anonymous>.Base.Base|(R|/B.B|())
R|<local>/base|.R|/Case3.<anonymous>.Base.baseFun|()
R|<local>/base|.R|/Case3.<anonymous>.Base.property|
(this@R|/<anonymous>|, R|<local>/base|).R|/<anonymous>.hoo|()
}
public[local] final fun caseForChild(): R|kotlin/Unit| {
public final fun caseForChild(): R|kotlin/Unit| {
lval child: R|Case3.<anonymous>.Child| = this@R|/<anonymous>|.R|/Case3.<anonymous>.Child.Child|(R|/B.B|())
R|<local>/child|.R|/Case3.<anonymous>.Base.baseFun|()
R|<local>/child|.R|/Case3.<anonymous>.Base.property|
@@ -14,7 +14,7 @@ FILE: objectDerivedFromInnerClass.kt
}
public final fun test(): R|kotlin/Unit| {
lval x: R|<anonymous>| = object : R|Outer.Inner| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|Outer.Inner|>()
}
@@ -6,24 +6,24 @@ FILE: lambdaInWhenBranch.kt
}
private final data class SubClass1 : R|Sealed| {
public[private] constructor(t: R|kotlin/String|): R|SubClass1| {
public constructor(t: R|kotlin/String|): R|SubClass1| {
super<R|Sealed|>()
}
public[private] final val t: R|kotlin/String| = R|<local>/t|
public final val t: R|kotlin/String| = R|<local>/t|
public get(): R|kotlin/String|
public[private] final fun component1(): R|kotlin/String|
public final fun component1(): R|kotlin/String|
public[private] final fun copy(t: R|kotlin/String| = this@R|/SubClass1|.R|/SubClass1.t|): R|SubClass1|
public final fun copy(t: R|kotlin/String| = this@R|/SubClass1|.R|/SubClass1.t|): R|SubClass1|
}
private final data class SubClass2 : R|Sealed| {
public[private] constructor(): R|SubClass2| {
public constructor(): R|SubClass2| {
super<R|Sealed|>()
}
public[private] final fun copy(): R|SubClass2|
public final fun copy(): R|SubClass2|
}
private final fun foo(p: R|Sealed|): R|kotlin/Unit| {
@@ -5,7 +5,7 @@ FILE: exposedFunctionParameterType.kt
}
private final class AInner : R|kotlin/Any| {
public[private] constructor(): R|A.AInner| {
public constructor(): R|A.AInner| {
super<R|kotlin/Any|>()
}
@@ -5,7 +5,7 @@ FILE: exposedFunctionReturnType.kt
}
private final class InnerA : R|kotlin/Any| {
public[private] constructor(): R|A.InnerA| {
public constructor(): R|A.InnerA| {
super<R|kotlin/Any|>()
}
@@ -20,4 +20,3 @@ FILE: exposedFunctionReturnType.kt
public final fun foo(str: R|kotlin/String|): R|A.InnerA|
}
@@ -5,11 +5,11 @@ FILE: exposedPropertyType.kt
}
private final class AInnerPrivate : R|kotlin/Any| {
public[private] constructor(str: R|kotlin/String|): R|A.AInnerPrivate| {
public constructor(str: R|kotlin/String|): R|A.AInnerPrivate| {
super<R|kotlin/Any|>()
}
public[private] final val str: R|kotlin/String| = R|<local>/str|
public final val str: R|kotlin/String| = R|<local>/str|
public get(): R|kotlin/String|
}
@@ -21,10 +21,10 @@ FILE: exposedPropertyType.kt
public final static enum entry A: R|A.AInnerProtectedEnum|
public final static enum entry B: R|A.AInnerProtectedEnum|
public[protected] final static fun values(): R|kotlin/Array<A.AInnerProtectedEnum>| {
public final static fun values(): R|kotlin/Array<A.AInnerProtectedEnum>| {
}
public[protected] final static fun valueOf(value: R|kotlin/String|): R|A.AInnerProtectedEnum| {
public final static fun valueOf(value: R|kotlin/String|): R|A.AInnerProtectedEnum| {
}
}
@@ -69,4 +69,4 @@ FILE: exposedPropertyType.kt
public get(): R|A.AInnerProtectedEnum|
public set(value: R|A.AInnerProtectedEnum|): R|kotlin/Unit|
}
}
@@ -17,7 +17,7 @@ FILE: exposedSupertype.kt
}
protected final class BProtected : R|kotlin/Any| {
public[protected] constructor(): R|B.BProtected| {
public constructor(): R|B.BProtected| {
super<R|kotlin/Any|>()
}
@@ -32,18 +32,18 @@ FILE: exposedSupertype.kt
}
private final class C : R|kotlin/Any| {
public[private] constructor(): R|C| {
public constructor(): R|C| {
super<R|kotlin/Any|>()
}
public[private] final class CPublic : R|kotlin/Any| {
public[private] constructor(): R|C.CPublic| {
public final class CPublic : R|kotlin/Any| {
public constructor(): R|C.CPublic| {
super<R|kotlin/Any|>()
}
}
public[private] abstract interface CPublicI : R|kotlin/Any| {
public abstract interface CPublicI : R|kotlin/Any| {
}
}
@@ -5,7 +5,7 @@ FILE: exposedTypeAlias.kt
}
private final inner class Inner : R|kotlin/Any| {
public[private] constructor(): R|A.Inner| {
public constructor(): R|A.Inner| {
super<R|kotlin/Any|>()
}
@@ -1,12 +1,12 @@
FILE: exposedTypeParameters.kt
private open class A : R|kotlin/Any| {
public[private] constructor(): R|A| {
public constructor(): R|A| {
super<R|kotlin/Any|>()
}
}
internal open class B : R|kotlin/Any| {
public[internal] constructor(): R|B| {
public constructor(): R|B| {
super<R|kotlin/Any|>()
}
@@ -17,7 +17,7 @@ FILE: exposedTypeParameters.kt
}
protected open class D : R|kotlin/Any| {
public[protected] constructor(): R|C.D| {
public constructor(): R|C.D| {
super<R|kotlin/Any|>()
}
@@ -49,13 +49,13 @@ FILE: exposedTypeParameters.kt
}
internal final class Test4<T : R|B|> : R|kotlin/Any| {
public[internal] constructor<T : R|B|>(): R|Test4<T>| {
public constructor<T : R|B|>(): R|Test4<T>| {
super<R|kotlin/Any|>()
}
}
private final class Test5<T : R|B|> : R|kotlin/Any| {
public[private] constructor<T : R|B|>(): R|Test5<T>| {
public constructor<T : R|B|>(): R|Test5<T>| {
super<R|kotlin/Any|>()
}
@@ -66,14 +66,14 @@ FILE: exposedTypeParameters.kt
}
protected final class Test6<T : R|C.D|> : R|kotlin/Any| {
public[protected] constructor<T : R|C.D|>(): R|Container.Test6<T>| {
public constructor<T : R|C.D|>(): R|Container.Test6<T>| {
super<R|kotlin/Any|>()
}
}
protected final class Test7<T : R|B|> : R|kotlin/Any| {
public[protected] constructor<T : R|B|>(): R|Container.Test7<T>| {
public constructor<T : R|B|>(): R|Container.Test7<T>| {
super<R|kotlin/Any|>()
}
@@ -51,7 +51,7 @@ FILE: singletonConstructors.kt
}
public final static enum entry X: R|E| = object : R|E| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|E|>()
}
@@ -5,11 +5,11 @@ FILE: anonymousInDelegate.kt
}
public final val x: R|kotlin/Int|by R|kotlin/lazy|<R|kotlin/Int|>(<L> = lazy@fun <anonymous>(): R|kotlin/Int| {
lval foo: R|<anonymous>| = object : R|Foo| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final override fun bar(): R|kotlin/Int| {
public final override fun bar(): R|kotlin/Int| {
^bar Int(42)
}
@@ -24,15 +24,15 @@ FILE: delegateWithAnonymousObject.kt
public final var issueListView: R|IssueListView|by this@R|/IssuesListUserProfile|.R|/delegate|<R|IssuesListUserProfile|, R|IssuesListUserProfile|, R|IssueListView|>(<L> = delegate@fun <anonymous>(): R|kotlin/properties/ReadWriteProperty<IssuesListUserProfile, IssueListView>| {
^ object : R|kotlin/properties/ReadWriteProperty<IssuesListUserProfile, IssueListView>| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final override fun getValue(thisRef: R|IssuesListUserProfile|, property: R|kotlin/reflect/KProperty<*>|): R|IssueListView| {
public final override fun getValue(thisRef: R|IssuesListUserProfile|, property: R|kotlin/reflect/KProperty<*>|): R|IssueListView| {
^getValue R|/IssueListView.IssueListView|()
}
public[local] final override fun setValue(thisRef: R|IssuesListUserProfile|, property: R|kotlin/reflect/KProperty<*>|, value: R|IssueListView|): R|kotlin/Unit| {
public final override fun setValue(thisRef: R|IssuesListUserProfile|, property: R|kotlin/reflect/KProperty<*>|, value: R|IssueListView|): R|kotlin/Unit| {
^setValue R|/IssueListView.IssueListView|().R|/IssueListView.updateFrom|(R|<local>/value|)
}
@@ -27,17 +27,17 @@ FILE: hashTableWithForEach.kt
}
private final class Entry<K, V> : R|kotlin/collections/MutableMap.MutableEntry<K, V>| {
public[private] constructor<K, V>(key: R|K|, value: R|V|): R|SomeHashTable.Entry<K, V>| {
public constructor<K, V>(key: R|K|, value: R|V|): R|SomeHashTable.Entry<K, V>| {
super<R|kotlin/Any|>()
}
public[private] final override val key: R|K| = R|<local>/key|
public final override val key: R|K| = R|<local>/key|
public get(): R|K|
public[private] final override val value: R|V| = R|<local>/value|
public final override val value: R|V| = R|<local>/value|
public get(): R|V|
public[private] final override fun setValue(newValue: R|V|): R|V| {
public final override fun setValue(newValue: R|V|): R|V| {
^setValue throw R|java/lang/UnsupportedOperationException.UnsupportedOperationException|()
}
@@ -15,7 +15,7 @@ fun test(e: MyException, stream: PrintStream) {
val result = e.getLocalizedMessage()
}
fun test(e: YourException, stream: PrintStream) {
fun test(<!EXPOSED_PARAMETER_TYPE!>e: YourException<!>, stream: PrintStream) {
e.printStackTrace()
e.printStackTrace(stream)
val result = e.getLocalizedMessage()
@@ -2,14 +2,14 @@ FILE: problems.kt
public final val sb: R|java/lang/StringBuilder| = R|java/lang/StringBuilder.StringBuilder|()
public get(): R|java/lang/StringBuilder|
public final val o: R|<anonymous>| = object : R|kotlin/Any| {
private[local] constructor(): R|<anonymous>| {
private constructor(): R|<anonymous>| {
super<R|kotlin/Any|>()
}
public[local] final val name: R|kotlin/String| = String(123)
public final val name: R|kotlin/String| = String(123)
public get(): R|kotlin/String|
public[local] final fun test(): R|kotlin/Unit| {
public final fun test(): R|kotlin/Unit| {
this@R|/<anonymous>|.R|/<anonymous>.name|
}
@@ -18,7 +18,7 @@ FILE: problems.kt
public get(): R|<anonymous>|
public final fun test(): R|kotlin/Unit| {
local final class Local : R|kotlin/Any| {
public[local] constructor(): R|Local| {
public constructor(): R|Local| {
super<R|kotlin/Any|>()
}