1 /*******************************************************************************
2 * Copyright (c) 2000, 2003 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Common Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/cpl-v10.html
9 * IBM Corporation - initial API and implementation
10 *******************************************************************************/
11 package net.sourceforge.phpdt.internal.compiler.lookup;
13 public interface TypeIds {
14 // base type void null undefined Object String
15 // should have an id that is 0<= id <= 15
17 final int T_undefined = 0; // should not be changed
19 final int T_Object = 1;
25 final int T_short = 4;
27 final int T_boolean = 5;
33 final int T_double = 8;
35 final int T_float = 9;
39 final int T_String = 11;
41 final int T_null = 12;
43 // final int T_extendedDouble = 13;
44 // final int T_extendedLong = 14
46 // =========end of 4 bits constraint===========
48 final int T_JavaLangObject = T_Object; // for consistency
50 final int T_JavaLangString = T_String; // for consistency
52 // well-known exception types
53 final int T_JavaLangClass = 16;
55 final int T_JavaLangStringBuffer = 17;
57 final int T_JavaLangSystem = 18;
59 final int T_JavaLangError = 19;
61 final int T_JavaLangReflectConstructor = 20;
63 final int T_JavaLangThrowable = 21;
65 final int T_JavaLangNoClassDefError = 22;
67 final int T_JavaLangClassNotFoundException = 23;
69 final int T_JavaIoPrintStream = 24;
71 final int T_JavaLangException = 25;
74 final int T_JavaLangByte = 26;
76 final int T_JavaLangShort = 27;
78 final int T_JavaLangCharacter = 28;
80 final int T_JavaLangInteger = 29;
82 final int T_JavaLangLong = 30;
84 final int T_JavaLangFloat = 31;
86 final int T_JavaLangDouble = 32;
88 final int T_JavaLangBoolean = 33;
90 final int T_JavaLangVoid = 34;
93 final int T_JavaLangAssertionError = 35;
95 final int NoId = Integer.MAX_VALUE;
97 // implicit conversions: <compileType> to <runtimeType> (note: booleans are
98 // integers at runtime)
99 final int Boolean2Int = T_boolean + (T_int << 4);
101 final int Boolean2String = T_boolean + (T_String << 4);
103 final int Boolean2Boolean = T_boolean + (T_boolean << 4);
105 final int Byte2Byte = T_byte + (T_byte << 4);
107 final int Byte2Short = T_byte + (T_short << 4);
109 final int Byte2Char = T_byte + (T_char << 4);
111 final int Byte2Int = T_byte + (T_int << 4);
113 final int Byte2Long = T_byte + (T_long << 4);
115 final int Byte2Float = T_byte + (T_float << 4);
117 final int Byte2Double = T_byte + (T_double << 4);
119 final int Byte2String = T_byte + (T_String << 4);
121 final int Short2Byte = T_short + (T_byte << 4);
123 final int Short2Short = T_short + (T_short << 4);
125 final int Short2Char = T_short + (T_char << 4);
127 final int Short2Int = T_short + (T_int << 4);
129 final int Short2Long = T_short + (T_long << 4);
131 final int Short2Float = T_short + (T_float << 4);
133 final int Short2Double = T_short + (T_double << 4);
135 final int Short2String = T_short + (T_String << 4);
137 final int Char2Byte = T_char + (T_byte << 4);
139 final int Char2Short = T_char + (T_short << 4);
141 final int Char2Char = T_char + (T_char << 4);
143 final int Char2Int = T_char + (T_int << 4);
145 final int Char2Long = T_char + (T_long << 4);
147 final int Char2Float = T_char + (T_float << 4);
149 final int Char2Double = T_char + (T_double << 4);
151 final int Char2String = T_char + (T_String << 4);
153 final int Int2Byte = T_int + (T_byte << 4);
155 final int Int2Short = T_int + (T_short << 4);
157 final int Int2Char = T_int + (T_char << 4);
159 final int Int2Int = T_int + (T_int << 4);
161 final int Int2Long = T_int + (T_long << 4);
163 final int Int2Float = T_int + (T_float << 4);
165 final int Int2Double = T_int + (T_double << 4);
167 final int Int2String = T_int + (T_String << 4);
169 final int Long2Byte = T_long + (T_byte << 4);
171 final int Long2Short = T_long + (T_short << 4);
173 final int Long2Char = T_long + (T_char << 4);
175 final int Long2Int = T_long + (T_int << 4);
177 final int Long2Long = T_long + (T_long << 4);
179 final int Long2Float = T_long + (T_float << 4);
181 final int Long2Double = T_long + (T_double << 4);
183 final int Long2String = T_long + (T_String << 4);
185 final int Float2Byte = T_float + (T_byte << 4);
187 final int Float2Short = T_float + (T_short << 4);
189 final int Float2Char = T_float + (T_char << 4);
191 final int Float2Int = T_float + (T_int << 4);
193 final int Float2Long = T_float + (T_long << 4);
195 final int Float2Float = T_float + (T_float << 4);
197 final int Float2Double = T_float + (T_double << 4);
199 final int Float2String = T_float + (T_String << 4);
201 final int Double2Byte = T_double + (T_byte << 4);
203 final int Double2Short = T_double + (T_short << 4);
205 final int Double2Char = T_double + (T_char << 4);
207 final int Double2Int = T_double + (T_int << 4);
209 final int Double2Long = T_double + (T_long << 4);
211 final int Double2Float = T_double + (T_float << 4);
213 final int Double2Double = T_double + (T_double << 4);
215 final int Double2String = T_double + (T_String << 4);
217 final int String2String = T_String + (T_String << 4);
219 final int Object2String = T_Object + (T_String << 4);
221 final int Null2String = T_null + (T_String << 4);
223 final int Object2Object = T_Object + (T_Object << 4);