diff options
author | Stephan Herrmann | 2010-04-01 19:56:59 +0000 |
---|---|---|
committer | Stephan Herrmann | 2010-04-01 19:56:59 +0000 |
commit | 7b7062f3b12bba7ef33116efb94da1f54e069625 (patch) | |
tree | 953104b5ab329138aac4d340fb014e321cd658a2 /org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java | |
parent | b41f944c832b588bb998e321bf7fd9a4e1c62c08 (diff) | |
download | org.eclipse.objectteams-7b7062f3b12bba7ef33116efb94da1f54e069625.tar.gz org.eclipse.objectteams-7b7062f3b12bba7ef33116efb94da1f54e069625.tar.xz org.eclipse.objectteams-7b7062f3b12bba7ef33116efb94da1f54e069625.zip |
initial commit in accordance with CQ 3784
Diffstat (limited to 'org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java')
-rw-r--r-- | org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java | 164 |
1 files changed, 164 insertions, 0 deletions
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java new file mode 100644 index 000000000..3e9b82ebe --- /dev/null +++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java @@ -0,0 +1,164 @@ +/******************************************************************************* + * Copyright (c) 2000, 2009 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ +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 + // 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_JavaLangObject = 1; + final int T_char = 2; + final int T_byte = 3; + final int T_short = 4; + final int T_boolean = 5; + final int T_void = 6; + final int T_long = 7; + final int T_double = 8; + final int T_float = 9; + final int T_int = 10; + final int T_JavaLangString = 11; + final int T_null = 12; + + //=========end of 4 bits constraint=========== + + // well-known exception types + final int T_JavaLangClass = 16; + final int T_JavaLangStringBuffer = 17; + final int T_JavaLangSystem = 18; + final int T_JavaLangError = 19; + final int T_JavaLangReflectConstructor = 20; + final int T_JavaLangThrowable = 21; + final int T_JavaLangNoClassDefError = 22; + final int T_JavaLangClassNotFoundException = 23; + final int T_JavaLangRuntimeException = 24; + final int T_JavaLangException = 25; + + // wrapper types + final int T_JavaLangByte = 26; + final int T_JavaLangShort = 27; + final int T_JavaLangCharacter = 28; + final int T_JavaLangInteger = 29; + final int T_JavaLangLong = 30; + final int T_JavaLangFloat = 31; + final int T_JavaLangDouble = 32; + final int T_JavaLangBoolean = 33; + final int T_JavaLangVoid = 34; + + // 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 T_JavaIoPrintStream = 53; + + final int T_JavaLangReflectField = 54; + final int T_JavaLangReflectMethod = 55; + + final int T_JavaIoExternalizable = 56; + final int T_JavaIoObjectStreamException = 57; + final int T_JavaIoException = 58; + + final int T_JavaUtilCollection = 59; + + 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_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 Byte2Char = T_byte + (T_char << 4); + final int Byte2Int = T_byte + (T_int << 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_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 Short2Int = T_short + (T_int << 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_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 Char2Int = T_char + (T_int << 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_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 Int2Int = T_int + (T_int << 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_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 Long2Int = T_long + (T_int << 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_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 Float2Int = T_float + (T_int << 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_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 Double2Int = T_double + (T_int << 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_JavaLangString << 4); + final int String2String = T_JavaLangString + (T_JavaLangString << 4); + final int Object2String = T_JavaLangObject + (T_JavaLangString << 4); + final int Null2Null = T_null + (T_null << 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; +} |