Split CompileTimeConstant into two entities
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
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
package
|
||||
|
||||
Ann2(a = Ann1(a = IntegerValueType(1))) internal val a: kotlin.Int = 1
|
||||
Ann2(a = Ann1(a = IntegerValueType(1))) internal val c: kotlin.Int = 2
|
||||
Ann2(a = Ann1(a = 1)) internal val a: kotlin.Int = 1
|
||||
Ann2(a = Ann1(a = 1)) internal val c: kotlin.Int = 2
|
||||
internal fun bar(/*0*/ a: Ann = ...): kotlin.Unit
|
||||
internal fun foo(): kotlin.Unit
|
||||
internal fun </*0*/ T> javaClass(): java.lang.Class<T>
|
||||
|
||||
Reference in New Issue
Block a user