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
+3
View File
@@ -0,0 +1,3 @@
package root
fun foo() = <caret>myProperty
+4
View File
@@ -0,0 +1,4 @@
FILE: main.kt
public final fun foo(): R|kotlin/Int| {
^foo R|root/myProperty|
}
@@ -0,0 +1,3 @@
package root
val myProperty get() = 42
@@ -0,0 +1,5 @@
FILE: myProperty.kt
public final val myProperty: R|kotlin/Int|
public get(): R|kotlin/Int| {
^ Int(42)
}
@@ -0,0 +1 @@
R|root/myProperty|
@@ -0,0 +1,3 @@
{
"mainFile": "main.kt"
}