9aa8fb80e7
NB: in order to produce correct IR origins, the source element kinds for some FIR elements has been changed. As a side effect, mapping PSI to FIR slightly changed: namely, for `a[b]++`, `a[b]` used to be mapped on `set` call or callable reference, but now it is mapped on `get` call. ^KT-61891: Fixed ^KT-64387: Fixed
27 lines
1.4 KiB
Plaintext
Vendored
27 lines
1.4 KiB
Plaintext
Vendored
KT element: KtPostfixExpression
|
|
FIR element: FirFunctionCallImpl
|
|
FIR source kind: DesugaredPostfixInc
|
|
|
|
FIR element rendered:
|
|
R|<local>/<array>|.R|SubstitutionOverride</MyMap.set: R|kotlin/Unit|>|(R|<local>/<index_0>|, R|<local>/<unary>|.R|/A.inc|())
|
|
|
|
FIR FILE:
|
|
FILE: [ResolvedTo(IMPORTS)] incWithArrayAccessConvention.kt
|
|
public abstract [ResolvedTo(STATUS)] interface A : R|kotlin/Any| {
|
|
public abstract operator [ResolvedTo(CONTRACTS)] fun inc(): R|A|
|
|
|
|
}
|
|
public abstract [ResolvedTo(STATUS)] interface MyMap<[ResolvedTo(STATUS)] K, [ResolvedTo(STATUS)] V> : R|kotlin/Any| {
|
|
public abstract operator [ResolvedTo(CONTRACTS)] fun get([ResolvedTo(CONTRACTS)] k: R|K|): R|V|
|
|
|
|
public abstract operator [ResolvedTo(CONTRACTS)] fun set([ResolvedTo(CONTRACTS)] k: R|K|, [ResolvedTo(CONTRACTS)] v: R|V|): R|kotlin/Unit|
|
|
|
|
}
|
|
public final [ResolvedTo(BODY_RESOLVE)] fun test([ResolvedTo(BODY_RESOLVE)] m: R|MyMap<kotlin/String, A>|): R|kotlin/Unit| {
|
|
[ResolvedTo(BODY_RESOLVE)] lval <array>: R|MyMap<kotlin/String, A>| = R|<local>/m|
|
|
[ResolvedTo(BODY_RESOLVE)] lval <index_0>: R|kotlin/String| = String(a)
|
|
[ResolvedTo(BODY_RESOLVE)] lval <unary>: R|A| = R|<local>/<array>|.R|SubstitutionOverride</MyMap.get: R|A|>|(R|<local>/<index_0>|)
|
|
R|<local>/<array>|.R|SubstitutionOverride</MyMap.set: R|kotlin/Unit|>|(R|<local>/<index_0>|, R|<local>/<unary>|.R|/A.inc|())
|
|
R|<local>/<unary>|
|
|
}
|