212baf580c
This changes FirAnnotationValueConverter to no longer rely on PSI information when projecting annotation parameter information to AA. For annotations defined in Java, including many meta-annotations, PSI information is not available for the annotation. This caused those annotation values to be projected as KtUnsupportedAnnotationValue. Instead of using PSI information, this changes FirAnnotationValueConverter to use the tree structure instead. Spread and named parameter arguments are spliced into the parameter list of their surrounding vararg calls, meaning that callers see the expected structure. (See the varargSpreadParameter.kt test file for an example.)
5 lines
146 B
Kotlin
Vendored
5 lines
146 B
Kotlin
Vendored
annotation class A(vararg val strings: String)
|
|
annotation class AArray(vararg val value: A)
|
|
|
|
@AArray(A(strings = ["foo", "bar"]))
|
|
class F<caret>oo |