Can anyone explain how incremental compilation/ana...
# intellij
j
Can anyone explain how incremental compilation/analysis at the file level works in IntelliJ ? I.e. how you did to avoid recompiling the entire file when the user makes a small change to that file ?
g
I would have thought that it's the job of the build system (Gradle), (+ possibly the kotlin's gradle plugin (?!)), to decide what needs re-compilation and not IntelliJ's.
j
I'm pretty sure the IntelliJ plugin does some caching to provide completions faster. That's the kind of optimization I'm interested to learn about
👍 1
e
IDEA’s magic is completely independent of compilation. IDEA builds a parse tree itself and fills its cache from that. The parse tree is also available to plugins (I think). How exactly incremental updates and caching work is an implementation detail, I guess.
j
Those are the details I am asking for 🙂