Introduce FIR resolution API with lazy resolve to use in IDE

Now lazy resolve atomic element is a file (declaration-level resolve)
or a callable declaration (expression-level resolve)

#KT-24351 In Progress
This commit is contained in:
Mikhail Glukhikh
2019-07-26 21:25:57 +03:00
parent 1cd559a626
commit 760fb668bb
29 changed files with 683 additions and 35 deletions
+12
View File
@@ -0,0 +1,12 @@
FILE: main.kt
public final fun main(): R|kotlin/Unit| {
R|/callMe|()
R|/foo|()
R|/bar|(Int(1), Int(2))
}
public final fun foo(): R|kotlin/Unit| {
lval y: <implicit> = Double(2.0)
}
public final fun bar(x: R|kotlin/Int|, y: R|kotlin/Int|): R|kotlin/Int| {
^bar R|<local>/x|.R|kotlin/Int.plus|(R|<local>/y|)
}