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:
Vendored
+7
-7
@@ -1,12 +1,12 @@
|
||||
package
|
||||
|
||||
A(value = {"1", "2", "3"}, y = IntegerValueType(1)) internal fun test1(): kotlin.Unit
|
||||
A(value = {"4"}, y = IntegerValueType(2)) internal fun test2(): kotlin.Unit
|
||||
A(value = {{"5", "6"}, "7"}, y = IntegerValueType(3)) internal fun test3(): kotlin.Unit
|
||||
A(value = {"1", "2", "3"}, x = kotlin.String::class, y = IntegerValueType(4)) internal fun test4(): kotlin.Unit
|
||||
A(value = {"4"}, y = IntegerValueType(5)) internal fun test5(): kotlin.Unit
|
||||
A(value = {{"5", "6"}, "7"}, x = kotlin.Any::class, y = IntegerValueType(6)) internal fun test6(): kotlin.Unit
|
||||
A(value = {}, y = IntegerValueType(7)) internal fun test7(): kotlin.Unit
|
||||
A(value = {"1", "2", "3"}, y = 1) internal fun test1(): kotlin.Unit
|
||||
A(value = {"4"}, y = 2) internal fun test2(): kotlin.Unit
|
||||
A(value = {{"5", "6"}, "7"}, y = 3) internal fun test3(): kotlin.Unit
|
||||
A(value = {"1", "2", "3"}, x = kotlin.String::class, y = 4) internal fun test4(): kotlin.Unit
|
||||
A(value = {"4"}, y = 5) internal fun test5(): kotlin.Unit
|
||||
A(value = {{"5", "6"}, "7"}, x = kotlin.Any::class, y = 6) internal fun test6(): kotlin.Unit
|
||||
A(value = {}, y = 7) internal fun test7(): kotlin.Unit
|
||||
A(value = {"8", "9", "10"}) internal fun test8(): kotlin.Unit
|
||||
|
||||
public final class A : kotlin.Annotation {
|
||||
|
||||
+5
-5
@@ -1,16 +1,16 @@
|
||||
package
|
||||
|
||||
A(value = {"1", "2", "3"}) internal fun test1(): kotlin.Unit
|
||||
A(value = {"5", "6"}, x = kotlin.Any::class, y = IntegerValueType(3)) internal fun test10(): kotlin.Unit
|
||||
A(value = {"5", "6", "7"}, x = kotlin.Any::class, y = IntegerValueType(3)) internal fun test11(): kotlin.Unit
|
||||
A(value = {"5", "6"}, x = kotlin.Any::class, y = 3) internal fun test10(): kotlin.Unit
|
||||
A(value = {"5", "6", "7"}, x = kotlin.Any::class, y = 3) internal fun test11(): kotlin.Unit
|
||||
A(value = {"4"}) internal fun test2(): kotlin.Unit
|
||||
A(value = {{"5", "6"}, "7"}) internal fun test3(): kotlin.Unit
|
||||
A(value = {"1", "2", "3"}, x = kotlin.String::class) internal fun test4(): kotlin.Unit
|
||||
A(value = {"4"}, y = IntegerValueType(2)) internal fun test5(): kotlin.Unit
|
||||
A(value = {{"5", "6"}, "7"}, x = kotlin.Any::class, y = IntegerValueType(3)) internal fun test6(): kotlin.Unit
|
||||
A(value = {"4"}, y = 2) internal fun test5(): kotlin.Unit
|
||||
A(value = {{"5", "6"}, "7"}, x = kotlin.Any::class, y = 3) internal fun test6(): kotlin.Unit
|
||||
A(value = {}) internal fun test7(): kotlin.Unit
|
||||
A(value = {}) internal fun test8(): kotlin.Unit
|
||||
A(value = {}, x = kotlin.Any::class, y = IntegerValueType(3)) internal fun test9(): kotlin.Unit
|
||||
A(value = {}, x = kotlin.Any::class, y = 3) internal fun test9(): kotlin.Unit
|
||||
|
||||
public final class A : kotlin.Annotation {
|
||||
public constructor A(/*0*/ vararg value: kotlin.String /*kotlin.Array<out kotlin.String>*/, /*1*/ x: kotlin.reflect.KClass<*> = ..., /*2*/ y: kotlin.Int = ...)
|
||||
|
||||
Reference in New Issue
Block a user