Files
kotlin-fork/compiler/fir/resolve/testData/resolveWithStdlib/problems/complexSmartCasts.txt
T

46 lines
1.6 KiB
Plaintext
Vendored

FILE: complexSmartCasts.kt
public final fun test_2(s: R|kotlin/String?|): R|kotlin/Unit| {
R|<local>/s|?.R|kotlin/let|<R|kotlin/String|, R|kotlin/Unit|>(<L> = let@fun <anonymous>(it: R|kotlin/String|): R|kotlin/Unit| <kind=EXACTLY_ONCE> {
R|/takeString|(R|<local>/it|)
R|/takeString|(R|<local>/s|)
}
)
}
public final class Wrapper : R|kotlin/Any| {
public constructor(s: R|kotlin/String?|): R|Wrapper| {
super<R|kotlin/Any|>()
}
public final val s: R|kotlin/String?| = R|<local>/s|
public get(): R|kotlin/String?|
public final fun withThis(): R|kotlin/Unit| {
when () {
!=(this@R|/Wrapper|.R|/Wrapper.s|, Null(null)) -> {
R|/takeString|(this@R|/Wrapper|.R|/Wrapper.s|)
}
}
when () {
!=(this@R|/Wrapper|.R|/Wrapper.s|, Null(null)) -> {
R|/takeString|(this@R|/Wrapper|.R|/Wrapper.s|)
}
}
}
}
public final fun R|kotlin/Any|.withInvoke(f: R|kotlin/String.() -> kotlin/Unit|): R|kotlin/Unit| {
when () {
(this@R|/withInvoke| is R|kotlin/String|) -> {
<Inapplicable(INAPPLICABLE): [kotlin/Function1.invoke]>#()
}
}
}
public final fun R|kotlin/String|.withInvoke(f: R|kotlin/String.() -> kotlin/Unit|): R|kotlin/Unit| {
R|<local>/f|.R|FakeOverride<kotlin/Function1.invoke: R|kotlin/Unit|>|(this@R|/withInvoke|)
}
public final fun takeString(s: R|kotlin/String|): R|kotlin/Unit| {
}