[Analysis API] Test 'IGNORE_SELF' mode in context collector tests

Parent declarations of the file copy are typically unresolved in the
'IGNORE_SELF' mode, as the declaration designation contains declarations
from the original file.
This commit is contained in:
Yan Zhulanow
2024-01-10 22:41:07 +09:00
committed by Space Team
parent adb8b7b252
commit f9c7ca3bdc
59 changed files with 2489 additions and 1 deletions
@@ -0,0 +1,33 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
FILE: [ResolvedTo(IMPORTS)] afterIf.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
when () {
(R|<local>/obj| is R|Foo|) -> {
R|/consume|(R|<local>/obj|)
}
}
R|<local>/obj|.R|kotlin/Any.hashCode|()
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,45 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol initial: R|Node?|
Element 7
Scope: FirLocalScope
Properties:
FirPropertySymbol lvar current: R|Node?|
Smart Casts:
FirPropertySymbol lvar current: R|Node?|
Types:
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] afterLoop.kt
public final? [ResolvedTo(RAW_FIR)] interface Node : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] val shouldProcess: Boolean
public? [ResolvedTo(RAW_FIR)] get(): Boolean
public? final? [ResolvedTo(RAW_FIR)] val parent: Node?
public? [ResolvedTo(RAW_FIR)] get(): Node?
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] initial: R|Node?|): R|kotlin/Unit| {
[ResolvedTo(BODY_RESOLVE)] lvar current: R|Node?| = R|<local>/initial|
while(R|<local>/current|!!.R|/Node.shouldProcess|) {
R|/consume|(R|<local>/current|)
R|<local>/current| = R|<local>/current|.R|/Node.parent|
}
R|/consume|(R|<local>/current|)
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] node: Node): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,40 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Smart Casts:
FirValueParameterSymbol obj: R|kotlin/Any|
Types:
Foo
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] andRight.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] val isValid: Boolean
public? [ResolvedTo(RAW_FIR)] get(): Boolean
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
when () {
(R|<local>/obj| is R|Foo|) && R|<local>/obj|.R|/Foo.isValid| -> {
R|/consume|(R|<local>/obj|)
}
}
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,39 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Element 8
Scope: FirLocalScope
Smart Casts:
FirValueParameterSymbol obj: R|kotlin/Any|
Types:
Foo
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] argument.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
when () {
(R|<local>/obj| is R|Foo|) -> {
R|/consume|(R|<local>/obj|)
}
}
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,49 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Element 8
Scope: FirLocalScope
Element 9
Scope: FirLocalScope
Smart Casts:
FirValueParameterSymbol obj: R|kotlin/Any|
Types:
Foo
kotlin.Any
Bar
FILE: [ResolvedTo(IMPORTS)] argumentAsReceiver.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
}
public final? [ResolvedTo(RAW_FIR)] interface Bar : R|kotlin/Any| {
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
when () {
(R|<local>/obj| is R|Foo|) -> {
when () {
(R|<local>/obj| is R|Bar|) -> {
R|<local>/obj|.R|/consume|(R|<local>/obj|)
}
}
}
}
}
public? final? [ResolvedTo(RAW_FIR)] fun Bar.consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,33 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
FILE: [ResolvedTo(IMPORTS)] beforeIf.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
R|<local>/obj|.R|kotlin/Any.hashCode|()
when () {
(R|<local>/obj| is R|Foo|) -> {
R|/consume|(R|<local>/obj|)
}
}
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,35 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol initial: R|Node|
Element 7
Scope: FirLocalScope
FILE: [ResolvedTo(IMPORTS)] beforeLoop.kt
public final? [ResolvedTo(RAW_FIR)] interface Node : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] val parent: Node?
public? [ResolvedTo(RAW_FIR)] get(): Node?
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] initial: R|Node|): R|kotlin/Unit| {
[ResolvedTo(BODY_RESOLVE)] lvar current: R|Node| = R|<local>/initial|
while(!=(R|<local>/current|, Null(null))) {
R|/consume|(R|<local>/current|)
R|<local>/current| = R|<local>/current|.R|/Node.parent|
}
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] node: Node): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,52 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Implicit receiver:
FirRegularClassSymbol public open class Foo : R|kotlin/Any|
Type: Bar
Element 7
Scope: FirLocalScope
Element 8
Scope: FirLocalScope
Element 9
Scope: FirLocalScope
Smart Casts:
FirRegularClassSymbol public open class Foo : R|kotlin/Any|
Types:
Bar
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] dispatchReceiver.kt
public open [ResolvedTo(RAW_FIR)] class Foo : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] constructor(): R|Foo| {
LAZY_super<R|kotlin/Any|>
}
public final [ResolvedTo(BODY_RESOLVE)] fun foo(): R|kotlin/Unit| {
when () {
(this@R|/Foo| is R|Bar|) -> {
R|/consume|(this@R|/Foo|)
}
}
}
}
public final? [ResolvedTo(RAW_FIR)] class Bar : Foo {
public? [ResolvedTo(RAW_FIR)] constructor(): R|Bar| {
LAZY_super<Foo>
}
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Bar): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,41 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Element 7
Implicit receiver:
FirNamedFunctionSymbol public final fun R|kotlin/Any|.test(): R|kotlin/Unit|
Type: Foo
Element 8
Scope: FirLocalScope
Element 9
Scope: FirLocalScope
Smart Casts:
FirNamedFunctionSymbol public final fun R|kotlin/Any|.test(): R|kotlin/Unit|
Types:
Foo
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] extensionReceiver.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
}
public final [ResolvedTo(BODY_RESOLVE)] fun R|kotlin/Any|.test(): R|kotlin/Unit| {
when () {
(this@R|/test| is R|Foo|) -> {
R|/consume|(this@R|/test|)
}
}
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,43 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol initial: R|Node|
Element 7
Scope: FirLocalScope
Properties:
FirPropertySymbol lvar current: R|Node|
Element 8
Scope: FirLocalScope
Smart Casts:
FirPropertySymbol lvar current: R|Node|
Types:
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] insideLoop.kt
public final? [ResolvedTo(RAW_FIR)] interface Node : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] val parent: Node?
public? [ResolvedTo(RAW_FIR)] get(): Node?
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] initial: R|Node|): R|kotlin/Unit| {
[ResolvedTo(BODY_RESOLVE)] lvar current: R|Node| = R|<local>/initial|
while(!=(R|<local>/current|, Null(null))) {
R|/consume|(R|<local>/current|)
R|<local>/current| = R|<local>/current|.R|/Node.parent|
}
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] node: Node): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,50 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol a: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Properties:
FirPropertySymbol lvar result: R|kotlin/Int|
Smart Casts:
FirValueParameterSymbol a: R|kotlin/Any|
Types:
Foo
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] onLabel.kt
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Any|): R|kotlin/Unit| {
when () {
(R|<local>/a| !is R|Foo|) -> {
^test Unit
}
}
[ResolvedTo(BODY_RESOLVE)] lvar result: R|kotlin/Int| = Int(0)
loop@while(Boolean(true)) {
when () {
R|<local>/a|.R|/Foo.process|().R|kotlin/Boolean.not|() -> {
break@@@[Boolean(true)]
}
}
}
}
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] fun process(): Boolean
}
@@ -0,0 +1,40 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol a: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Smart Casts:
FirValueParameterSymbol a: R|kotlin/Any|
Types:
Foo
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] onReference.kt
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Any|): R|kotlin/Unit| {
when () {
(R|<local>/a| !is R|Foo|) -> {
^test Unit
}
}
R|/check|(R|<local>/a|.R|/Foo.process|())
}
public? final? [ResolvedTo(RAW_FIR)] fun check([ResolvedTo(RAW_FIR)] condition: Boolean): R|kotlin/Unit| { LAZY_BLOCK }
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] fun process(): Boolean
}
@@ -0,0 +1,40 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol a: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Smart Casts:
FirValueParameterSymbol a: R|kotlin/Any|
Types:
Foo
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] onType.kt
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Any|): R|kotlin/Unit| {
when () {
(R|<local>/a| !is R|Foo|) -> {
^test Unit
}
}
R|/call|<R|kotlin/collections/List<kotlin/Int>|>()
}
public? final? inline [ResolvedTo(RAW_FIR)] fun <reified [ResolvedTo(RAW_FIR)] T : Any> call(): R|kotlin/Unit| { LAZY_BLOCK }
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] fun process(): Boolean
}
@@ -0,0 +1,36 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
FILE: [ResolvedTo(IMPORTS)] orRight.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] val isValid: Boolean
public? [ResolvedTo(RAW_FIR)] get(): Boolean
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
when () {
(R|<local>/obj| is R|Foo|) || R|/isValid|(R|<local>/obj|) -> {
R|/consume<Inapplicable(INAPPLICABLE): /consume>#|(R|<local>/obj|)
}
}
}
public? final? [ResolvedTo(RAW_FIR)] fun isValid([ResolvedTo(RAW_FIR)] obj: Any): Boolean { LAZY_BLOCK }
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,40 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol another: R|Foo|
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Element 8
Scope: FirLocalScope
Smart Casts:
FirValueParameterSymbol obj: R|kotlin/Any|
Types:
Foo
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] plainCheck.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|, [ResolvedTo(BODY_RESOLVE)] another: R|Foo|): R|kotlin/Unit| {
when () {
(R|<local>/obj| is R|Foo|) -> {
R|/consume|(R|<local>/another|)
}
}
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Foo): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,33 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Smart Casts:
FirValueParameterSymbol obj: R|kotlin/Any|
Types:
Foo
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] require.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
R|kotlin/require|((R|<local>/obj| is R|Foo|))
R|/consume|(R|<local>/obj|)
}
public? final? [ResolvedTo(RAW_FIR)] fun consume([ResolvedTo(RAW_FIR)] obj: Any): R|kotlin/Unit| { LAZY_BLOCK }
@@ -0,0 +1,47 @@
Tower Data Context:
Element 0
Scope: FirDefaultStarImportingScope
Element 1
Scope: FirExplicitStarImportingScope
Element 2
Scope: FirDefaultSimpleImportingScope
Element 3
Scope: FirDefaultSimpleImportingScope
Element 4
Scope: FirPackageMemberScope
Element 5
Scope: FirExplicitSimpleImportingScope
Element 6
Scope: FirLocalScope
Properties:
FirValueParameterSymbol obj: R|kotlin/Any|
Element 7
Scope: FirLocalScope
Element 8
Scope: FirLocalScope
Smart Casts:
FirValueParameterSymbol obj: R|kotlin/Any|
Types:
Bar
kotlin.Any
FILE: [ResolvedTo(IMPORTS)] when.kt
public final? [ResolvedTo(RAW_FIR)] interface Foo : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] fun foo(): R|kotlin/Unit|
}
public final? [ResolvedTo(RAW_FIR)] interface Bar : R|kotlin/Any| {
public? final? [ResolvedTo(RAW_FIR)] fun bar(): R|kotlin/Unit|
}
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] obj: R|kotlin/Any|): R|kotlin/Unit| {
when (R|<local>/obj|) {
($subj$ is R|Foo|) -> {
R|<local>/obj|.R|/Foo.foo|()
}
($subj$ is R|Bar|) -> {
R|<local>/obj|.R|/Bar.bar|()
}
}
}