mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-08 15:53:19 +00:00
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
13 lines
452 B
Java
Vendored
13 lines
452 B
Java
Vendored
class Foo {
|
|
public static final int i = 2;
|
|
public static final short s = 2;
|
|
public static final float f = 2f;
|
|
public static final double d = 2.0;
|
|
public static final long l = 2L;
|
|
public static final byte b = 2;
|
|
public static final boolean bool = true;
|
|
public static final char c = 'c';
|
|
public static final String str = "str";
|
|
public static final int charAsInt = '3';
|
|
public static final char intAsChar = 3;
|
|
} |