internal object GetConstant()
{
AssertLinked();
// only primitives and string can be literals in Java (because the other "primitives" (like uint),
// are treated as NonPrimitiveValueTypes)
if(field != null && field.IsLiteral && (fieldType.IsPrimitive || fieldType == CoreClasses.java.lang.String.Wrapper))
{
object val = field.GetRawConstantValue();
if(field.FieldType.IsEnum)
{
val = EnumHelper.GetPrimitiveValue(EnumHelper.GetUnderlyingType(field.FieldType), val);
}
if(fieldType.IsPrimitive)
{
return JVM.Box(val);
}
return val;
}
return null;
}