fbsamples / fbsamples/kotlin_ast_tools

Is it possible to resolve types from other files using Kotlin Compiler APIs?

Open
#3 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Kotlin
Stars
212
Forks
10
PR merge metrics
No merged PRs in 30d

Description

By just using Kotlin Compiler APIs to parse the AST, we can only resolve AST for one particular file. But is it possible to resolve types from other files?

To resolve types and other class information of the class that is in some other file, we would need bindingContext. I assume when we are developing a compiler plugin we would get the binding context. But if we are solely relying on Kotlin compiler APIs and parsing on one file at a time, is it possible to resolve the types of classes in other files?

Relevant questions:
https://discuss.kotlinlang.org/t/how-to-get-declaring-ktfile-ktclass-using-ktcallexpression/26271/1
https://stackoverflow.com/questions/44986763/psitreevisitor-how-to-find-out-type-of-ktcallexpression-receiver

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.