8c41524c0b734f8c0f428f5ba74e2c3e01507e46
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / compiler / lookup / TypeIds.java
1 /*******************************************************************************
2  * Copyright (c) 2000, 2001, 2002 International Business Machines Corp. and others.
3  * All rights reserved. This program and the accompanying materials 
4  * are made available under the terms of the Common Public License v0.5 
5  * which accompanies this distribution, and is available at
6  * http://www.eclipse.org/legal/cpl-v05.html
7  * 
8  * Contributors:
9  *     IBM Corporation - initial API and implementation
10  ******************************************************************************/
11 package net.sourceforge.phpdt.internal.compiler.lookup;
12
13 public interface TypeIds {
14         //base type void null undefined Object String
15         //should have an id that is 0<= id <= 15
16
17         final int T_undefined = 0; // should not be changed
18         final int T_Object = 1;
19         final int T_char = 2;
20         final int T_byte = 3;
21         final int T_short = 4;
22         final int T_boolean = 5;
23         final int T_void = 6;
24         final int T_long = 7;
25         final int T_double = 8;
26         final int T_float = 9;
27         final int T_int = 10;
28         final int T_String = 11;
29         final int T_null = 12;
30         //final int T_extendedDouble = 13;
31         //final int T_extendedLong = 14
32
33         //=========end of 4 bits constraint===========
34
35         final int T_JavaLangObject = T_Object; // for consistency
36         final int T_JavaLangString = T_String; // for consistency
37
38         // well-known exception types
39         final int T_JavaLangClass = 16;
40         final int T_JavaLangStringBuffer = 17;
41         final int T_JavaLangSystem = 18;
42         final int T_JavaLangError = 19;
43         final int T_JavaLangReflectConstructor = 20;
44         final int T_JavaLangThrowable = 21;
45         final int T_JavaLangNoClassDefError = 22;
46         final int T_JavaLangClassNotFoundException = 23;
47         final int T_JavaIoPrintStream = 24;
48         final int T_JavaLangException = 25;
49
50         // wrapper types
51         final int T_JavaLangByte = 26;
52         final int T_JavaLangShort = 27;
53         final int T_JavaLangCharacter = 28;
54         final int T_JavaLangInteger = 29;
55         final int T_JavaLangLong = 30;
56         final int T_JavaLangFloat = 31;
57         final int T_JavaLangDouble = 32;
58         final int T_JavaLangBoolean = 33;
59         final int T_JavaLangVoid = 34;
60
61         // 1.4 feature
62         final int T_JavaLangAssertionError = 35;
63         final int NoId = Integer.MAX_VALUE;
64
65         // implicit conversions: <compileType> to <runtimeType>  (note: booleans are integers at runtime)
66         final int Boolean2Int = T_boolean + (T_int << 4);
67         final int Boolean2String = T_boolean + (T_String << 4);
68         final int Boolean2Boolean = T_boolean + (T_boolean << 4);
69         final int Byte2Byte = T_byte + (T_byte << 4);
70         final int Byte2Short = T_byte + (T_short << 4);
71         final int Byte2Char = T_byte + (T_char << 4);
72         final int Byte2Int = T_byte + (T_int << 4);
73         final int Byte2Long = T_byte + (T_long << 4);
74         final int Byte2Float = T_byte + (T_float << 4);
75         final int Byte2Double = T_byte + (T_double << 4);
76         final int Byte2String = T_byte + (T_String << 4);
77         final int Short2Byte = T_short + (T_byte << 4);
78         final int Short2Short = T_short + (T_short << 4);
79         final int Short2Char = T_short + (T_char << 4);
80         final int Short2Int = T_short + (T_int << 4);
81         final int Short2Long = T_short + (T_long << 4);
82         final int Short2Float = T_short + (T_float << 4);
83         final int Short2Double = T_short + (T_double << 4);
84         final int Short2String = T_short + (T_String << 4);
85         final int Char2Byte = T_char + (T_byte << 4);
86         final int Char2Short = T_char + (T_short << 4);
87         final int Char2Char = T_char + (T_char << 4);
88         final int Char2Int = T_char + (T_int << 4);
89         final int Char2Long = T_char + (T_long << 4);
90         final int Char2Float = T_char + (T_float << 4);
91         final int Char2Double = T_char + (T_double << 4);
92         final int Char2String = T_char + (T_String << 4);
93         final int Int2Byte = T_int + (T_byte << 4);
94         final int Int2Short = T_int + (T_short << 4);
95         final int Int2Char = T_int + (T_char << 4);
96         final int Int2Int = T_int + (T_int << 4);
97         final int Int2Long = T_int + (T_long << 4);
98         final int Int2Float = T_int + (T_float << 4);
99         final int Int2Double = T_int + (T_double << 4);
100         final int Int2String = T_int + (T_String << 4);
101         final int Long2Byte = T_long + (T_byte << 4);
102         final int Long2Short = T_long + (T_short << 4);
103         final int Long2Char = T_long + (T_char << 4);
104         final int Long2Int = T_long + (T_int << 4);
105         final int Long2Long = T_long + (T_long << 4);
106         final int Long2Float = T_long + (T_float << 4);
107         final int Long2Double = T_long + (T_double << 4);
108         final int Long2String = T_long + (T_String << 4);
109         final int Float2Byte = T_float + (T_byte << 4);
110         final int Float2Short = T_float + (T_short << 4);
111         final int Float2Char = T_float + (T_char << 4);
112         final int Float2Int = T_float + (T_int << 4);
113         final int Float2Long = T_float + (T_long << 4);
114         final int Float2Float = T_float + (T_float << 4);
115         final int Float2Double = T_float + (T_double << 4);
116         final int Float2String = T_float + (T_String << 4);
117         final int Double2Byte = T_double + (T_byte << 4);
118         final int Double2Short = T_double + (T_short << 4);
119         final int Double2Char = T_double + (T_char << 4);
120         final int Double2Int = T_double + (T_int << 4);
121         final int Double2Long = T_double + (T_long << 4);
122         final int Double2Float = T_double + (T_float << 4);
123         final int Double2Double = T_double + (T_double << 4);
124         final int Double2String = T_double + (T_String << 4);
125         final int String2String = T_String + (T_String << 4);
126         final int Object2String = T_Object + (T_String << 4);
127         final int Null2String = T_null + (T_String << 4);
128         final int Object2Object = T_Object + (T_Object << 4);
129 }