c313887641
1. ConstantValue * just holds some value and its type * implementations for concrete constants 2. CompileTimeConstant * is only produced by ConstantExpressionEvaluator * has additional flags (canBeUsedInAnnotation etc) * has two implementations TypedCompileTimeConstant containing a constant value and IntegerValueConstant which does not have exact type * can be converted to ConstantValue Adjustt usages to use ConstantValue if flags are not needed Add tests for some uncovered cases
10 lines
166 B
Kotlin
Vendored
10 lines
166 B
Kotlin
Vendored
package test
|
|
|
|
annotation class Ann(
|
|
val b1: Long,
|
|
val b2: Long
|
|
)
|
|
|
|
Ann(1, 1.toLong()) class MyClass
|
|
|
|
// EXPECTED: Ann(b1 = 1.toLong(), b2 = 1.toLong()) |