package org.eclipse.jdt.internal.compiler.lookup;
public interface TypeIds {
- //base type void null undefined Object String
- //should have an id that is 0<= id <= 15
+ //base type void null undefined Object String
+ //should have an id that is 0<= id <= 15
+ // The IDs below must be representable using 4 bits so as to fit in operator signatures.
final int T_undefined = 0; // should not be changed
- final int T_Object = 1;
+ final int T_JavaLangObject = 1;
final int T_char = 2;
final int T_byte = 3;
final int T_short = 4;
final int T_double = 8;
final int T_float = 9;
final int T_int = 10;
- final int T_String = 11;
+ final int T_JavaLangString = 11;
final int T_null = 12;
- //final int T_extendedDouble = 13;
- //final int T_extendedLong = 14
//=========end of 4 bits constraint===========
- final int T_JavaLangObject = T_Object; // for consistency
- final int T_JavaLangString = T_String; // for consistency
-
// well-known exception types
final int T_JavaLangClass = 16;
final int T_JavaLangStringBuffer = 17;
final int T_JavaLangBoolean = 33;
final int T_JavaLangVoid = 34;
- // 1.4 feature
+ // 1.4 features
final int T_JavaLangAssertionError = 35;
-
+
// array interfaces
final int T_JavaLangCloneable = 36;
final int T_JavaIoSerializable = 37;
+
+ // 1.5 features
+ final int T_JavaLangIterable = 38;
+ final int T_JavaUtilIterator = 39;
+ final int T_JavaLangStringBuilder = 40;
+ final int T_JavaLangEnum = 41;
+ final int T_JavaLangIllegalArgumentException = 42;
+ final int T_JavaLangAnnotationAnnotation = 43;
+ final int T_JavaLangDeprecated = 44;
+ final int T_JavaLangAnnotationDocumented = 45;
+ final int T_JavaLangAnnotationInherited = 46;
+ final int T_JavaLangOverride = 47;
+ final int T_JavaLangAnnotationRetention = 48;
+ final int T_JavaLangSuppressWarnings = 49;
+ final int T_JavaLangAnnotationTarget = 50;
+ final int T_JavaLangAnnotationRetentionPolicy = 51;
+ final int T_JavaLangAnnotationElementType = 52;
final int NoId = Integer.MAX_VALUE;
+ public static final int IMPLICIT_CONVERSION_MASK = 0xFF;
+ public static final int COMPILE_TYPE_MASK = 0xF;
+
// implicit conversions: <compileType> to <runtimeType> (note: booleans are integers at runtime)
final int Boolean2Int = T_boolean + (T_int << 4);
- final int Boolean2String = T_boolean + (T_String << 4);
+ final int Boolean2String = T_boolean + (T_JavaLangString << 4);
final int Boolean2Boolean = T_boolean + (T_boolean << 4);
final int Byte2Byte = T_byte + (T_byte << 4);
final int Byte2Short = T_byte + (T_short << 4);
final int Byte2Long = T_byte + (T_long << 4);
final int Byte2Float = T_byte + (T_float << 4);
final int Byte2Double = T_byte + (T_double << 4);
- final int Byte2String = T_byte + (T_String << 4);
+ final int Byte2String = T_byte + (T_JavaLangString << 4);
final int Short2Byte = T_short + (T_byte << 4);
final int Short2Short = T_short + (T_short << 4);
final int Short2Char = T_short + (T_char << 4);
final int Short2Long = T_short + (T_long << 4);
final int Short2Float = T_short + (T_float << 4);
final int Short2Double = T_short + (T_double << 4);
- final int Short2String = T_short + (T_String << 4);
+ final int Short2String = T_short + (T_JavaLangString << 4);
final int Char2Byte = T_char + (T_byte << 4);
final int Char2Short = T_char + (T_short << 4);
final int Char2Char = T_char + (T_char << 4);
final int Char2Long = T_char + (T_long << 4);
final int Char2Float = T_char + (T_float << 4);
final int Char2Double = T_char + (T_double << 4);
- final int Char2String = T_char + (T_String << 4);
+ final int Char2String = T_char + (T_JavaLangString << 4);
final int Int2Byte = T_int + (T_byte << 4);
final int Int2Short = T_int + (T_short << 4);
final int Int2Char = T_int + (T_char << 4);
final int Int2Long = T_int + (T_long << 4);
final int Int2Float = T_int + (T_float << 4);
final int Int2Double = T_int + (T_double << 4);
- final int Int2String = T_int + (T_String << 4);
+ final int Int2String = T_int + (T_JavaLangString << 4);
final int Long2Byte = T_long + (T_byte << 4);
final int Long2Short = T_long + (T_short << 4);
final int Long2Char = T_long + (T_char << 4);
final int Long2Long = T_long + (T_long << 4);
final int Long2Float = T_long + (T_float << 4);
final int Long2Double = T_long + (T_double << 4);
- final int Long2String = T_long + (T_String << 4);
+ final int Long2String = T_long + (T_JavaLangString << 4);
final int Float2Byte = T_float + (T_byte << 4);
final int Float2Short = T_float + (T_short << 4);
final int Float2Char = T_float + (T_char << 4);
final int Float2Long = T_float + (T_long << 4);
final int Float2Float = T_float + (T_float << 4);
final int Float2Double = T_float + (T_double << 4);
- final int Float2String = T_float + (T_String << 4);
+ final int Float2String = T_float + (T_JavaLangString << 4);
final int Double2Byte = T_double + (T_byte << 4);
final int Double2Short = T_double + (T_short << 4);
final int Double2Char = T_double + (T_char << 4);
final int Double2Long = T_double + (T_long << 4);
final int Double2Float = T_double + (T_float << 4);
final int Double2Double = T_double + (T_double << 4);
- final int Double2String = T_double + (T_String << 4);
- final int String2String = T_String + (T_String << 4);
- final int Object2String = T_Object + (T_String << 4);
- final int Null2String = T_null + (T_String << 4);
- final int Object2Object = T_Object + (T_Object << 4);
+ final int Double2String = T_double + (T_JavaLangString << 4);
+ final int String2String = T_JavaLangString + (T_JavaLangString << 4);
+ final int Object2String = T_JavaLangObject + (T_JavaLangString << 4);
+ final int Null2String = T_null + (T_JavaLangString << 4);
+ final int Object2Object = T_JavaLangObject + (T_JavaLangObject << 4);
+ final int BOXING = 0x200;
+ final int UNBOXING = 0x400;
}