added -J option to preserve unmodified files in preexisting jarfile
[org.ibex.tool.git] / src / org / eclipse / jdt / internal / compiler / lookup / TypeConstants.java
1 /*******************************************************************************
2  * Copyright (c) 2000, 2004 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
7  * 
8  * Contributors:
9  *     IBM Corporation - initial API and implementation
10  *******************************************************************************/
11 package org.eclipse.jdt.internal.compiler.lookup;
12
13 public interface TypeConstants {
14         char[] JAVA = "java".toCharArray(); //$NON-NLS-1$
15         char[] LANG = "lang".toCharArray(); //$NON-NLS-1$
16         char[] IO = "io".toCharArray(); //$NON-NLS-1$
17         char[] ANNOTATION = "annotation".toCharArray(); //$NON-NLS-1$
18         char[] REFLECT = "reflect".toCharArray(); //$NON-NLS-1$
19         char[] LENGTH = "length".toCharArray(); //$NON-NLS-1$
20         char[] CLONE = "clone".toCharArray(); //$NON-NLS-1$
21         char[] GETCLASS = "getClass".toCharArray(); //$NON-NLS-1$
22         char[] OBJECT = "Object".toCharArray(); //$NON-NLS-1$
23         char[] MAIN = "main".toCharArray(); //$NON-NLS-1$
24         char[] SERIALVERSIONUID = "serialVersionUID".toCharArray(); //$NON-NLS-1$
25         char[] SERIALPERSISTENTFIELDS = "serialPersistentFields".toCharArray(); //$NON-NLS-1$ 
26         char[] READRESOLVE = "readResolve".toCharArray(); //$NON-NLS-1$
27         char[] WRITEREPLACE = "writeReplace".toCharArray(); //$NON-NLS-1$
28         char[] READOBJECT = "readObject".toCharArray(); //$NON-NLS-1$
29         char[] WRITEOBJECT = "writeObject".toCharArray(); //$NON-NLS-1$
30         char[] CharArray_JAVA_LANG_OBJECT = "java.lang.Object".toCharArray(); //$NON-NLS-1$
31         char[] CharArray_JAVA_LANG_ENUM = "java.lang.Enum".toCharArray(); //$NON-NLS-1$
32         char[] CharArray_JAVA_LANG_ANNOTATION_ANNOTATION = "java.lang.annotation.Annotation".toCharArray(); //$NON-NLS-1$
33         char[] CharArray_JAVA_IO_OBJECTINPUTSTREAM = "java.io.ObjectInputStream".toCharArray(); //$NON-NLS-1$
34         char[] CharArray_JAVA_IO_OBJECTOUTPUTSTREAM = "java.io.ObjectOutputStream".toCharArray(); //$NON-NLS-1$
35         char[] CharArray_JAVA_IO_OBJECTSTREAMFIELD = "java.io.ObjectStreamField".toCharArray(); //$NON-NLS-1$
36         char[] ANONYM_PREFIX = "new ".toCharArray(); //$NON-NLS-1$
37         char[] ANONYM_SUFFIX = "(){}".toCharArray(); //$NON-NLS-1$
38     char[] WILDCARD_NAME = { '?' };
39     char[] WILDCARD_SUPER = " super ".toCharArray(); //$NON-NLS-1$
40     char[] WILDCARD_EXTENDS = " extends ".toCharArray(); //$NON-NLS-1$
41     char[] WILDCARD_MINUS = { '-' };
42     char[] WILDCARD_STAR = { '*' };
43     char[] WILDCARD_PLUS = { '+' };
44         char[] BYTE = "byte".toCharArray(); //$NON-NLS-1$
45         char[] SHORT = "short".toCharArray(); //$NON-NLS-1$
46         char[] INT = "int".toCharArray(); //$NON-NLS-1$
47         char[] LONG = "long".toCharArray(); //$NON-NLS-1$
48         char[] FLOAT = "float".toCharArray(); //$NON-NLS-1$
49         char[] DOUBLE = "double".toCharArray(); //$NON-NLS-1$
50         char[] CHAR = "char".toCharArray(); //$NON-NLS-1$
51         char[] BOOLEAN = "boolean".toCharArray(); //$NON-NLS-1$
52         char[] NULL = "null".toCharArray(); //$NON-NLS-1$
53         char[] VOID = "void".toCharArray(); //$NON-NLS-1$
54     char[] VALUE = "value".toCharArray(); //$NON-NLS-1$
55     char[] VALUES = "values".toCharArray(); //$NON-NLS-1$
56     char[] VALUEOF = "valueOf".toCharArray(); //$NON-NLS-1$
57     char[] UPPER_SOURCE = "SOURCE".toCharArray(); //$NON-NLS-1$
58     char[] UPPER_CLASS = "CLASS".toCharArray(); //$NON-NLS-1$
59     char[] UPPER_RUNTIME = "RUNTIME".toCharArray(); //$NON-NLS-1$
60         char[] ANNOTATION_PREFIX = "@".toCharArray(); //$NON-NLS-1$
61         char[] ANNOTATION_SUFFIX = "()".toCharArray(); //$NON-NLS-1$
62     char[] TYPE = "TYPE".toCharArray(); //$NON-NLS-1$
63     char[] UPPER_FIELD = "FIELD".toCharArray(); //$NON-NLS-1$
64     char[] UPPER_METHOD = "METHOD".toCharArray(); //$NON-NLS-1$
65     char[] UPPER_PARAMETER = "PARAMETER".toCharArray(); //$NON-NLS-1$
66     char[] UPPER_CONSTRUCTOR = "CONSTRUCTOR".toCharArray(); //$NON-NLS-1$
67     char[] UPPER_LOCAL_VARIABLE = "LOCAL_VARIABLE".toCharArray(); //$NON-NLS-1$
68     char[] UPPER_ANNOTATION_TYPE = "ANNOTATION_TYPE".toCharArray(); //$NON-NLS-1$
69     char[] UPPER_PACKAGE = "PACKAGE".toCharArray(); //$NON-NLS-1$
70     
71         // Constant compound names
72         char[][] JAVA_LANG = {JAVA, LANG};
73         char[][] JAVA_IO = {JAVA, IO};
74         char[][] JAVA_LANG_ANNOTATION_ANNOTATION = {JAVA, LANG, ANNOTATION, "Annotation".toCharArray()}; //$NON-NLS-1$
75         char[][] JAVA_LANG_ASSERTIONERROR = {JAVA, LANG, "AssertionError".toCharArray()}; //$NON-NLS-1$
76         char[][] JAVA_LANG_CLASS = {JAVA, LANG, "Class".toCharArray()}; //$NON-NLS-1$
77         char[][] JAVA_LANG_CLASSNOTFOUNDEXCEPTION = {JAVA, LANG, "ClassNotFoundException".toCharArray()}; //$NON-NLS-1$
78         char[][] JAVA_LANG_CLONEABLE = {JAVA, LANG, "Cloneable".toCharArray()}; //$NON-NLS-1$
79         char[][] JAVA_LANG_ENUM = {JAVA, LANG, "Enum".toCharArray()}; //$NON-NLS-1$
80         char[][] JAVA_LANG_EXCEPTION = {JAVA, LANG, "Exception".toCharArray()}; //$NON-NLS-1$
81         char[][] JAVA_LANG_ERROR = {JAVA, LANG, "Error".toCharArray()}; //$NON-NLS-1$
82         char[][] JAVA_LANG_ILLEGALARGUMENTEXCEPTION = {JAVA, LANG, "IllegalArgumentException".toCharArray()}; //$NON-NLS-1$
83         char[][] JAVA_LANG_ITERABLE = {JAVA, LANG, "Iterable".toCharArray()}; //$NON-NLS-1$
84         char[][] JAVA_LANG_NOCLASSDEFERROR = {JAVA, LANG, "NoClassDefError".toCharArray()}; //$NON-NLS-1$
85         char[][] JAVA_LANG_OBJECT = {JAVA, LANG, OBJECT};
86         char[][] JAVA_LANG_STRING = {JAVA, LANG, "String".toCharArray()}; //$NON-NLS-1$
87         char[][] JAVA_LANG_STRINGBUFFER = {JAVA, LANG, "StringBuffer".toCharArray()}; //$NON-NLS-1$
88         char[][] JAVA_LANG_STRINGBUILDER = {JAVA, LANG, "StringBuilder".toCharArray()}; //$NON-NLS-1$
89         char[][] JAVA_LANG_SYSTEM = {JAVA, LANG, "System".toCharArray()}; //$NON-NLS-1$
90         char[][] JAVA_LANG_RUNTIMEEXCEPTION = {JAVA, LANG, "RuntimeException".toCharArray()}; //$NON-NLS-1$
91         char[][] JAVA_LANG_THROWABLE = {JAVA, LANG, "Throwable".toCharArray()}; //$NON-NLS-1$
92         char[][] JAVA_LANG_REFLECT_CONSTRUCTOR = {JAVA, LANG, REFLECT, "Constructor".toCharArray()}; //$NON-NLS-1$
93         char[][] JAVA_IO_PRINTSTREAM = {JAVA, IO, "PrintStream".toCharArray()}; //$NON-NLS-1$
94         char[][] JAVA_IO_SERIALIZABLE = {JAVA, IO, "Serializable".toCharArray()}; //$NON-NLS-1$
95         char[][] JAVA_LANG_BYTE = {JAVA, LANG, "Byte".toCharArray()}; //$NON-NLS-1$
96         char[][] JAVA_LANG_SHORT = {JAVA, LANG, "Short".toCharArray()}; //$NON-NLS-1$
97         char[][] JAVA_LANG_CHARACTER = {JAVA, LANG, "Character".toCharArray()}; //$NON-NLS-1$
98         char[][] JAVA_LANG_INTEGER = {JAVA, LANG, "Integer".toCharArray()}; //$NON-NLS-1$
99         char[][] JAVA_LANG_LONG = {JAVA, LANG, "Long".toCharArray()}; //$NON-NLS-1$
100         char[][] JAVA_LANG_FLOAT = {JAVA, LANG, "Float".toCharArray()}; //$NON-NLS-1$
101         char[][] JAVA_LANG_DOUBLE = {JAVA, LANG, "Double".toCharArray()}; //$NON-NLS-1$
102         char[][] JAVA_LANG_BOOLEAN = {JAVA, LANG, "Boolean".toCharArray()}; //$NON-NLS-1$
103         char[][] JAVA_LANG_VOID = {JAVA, LANG, "Void".toCharArray()}; //$NON-NLS-1$
104         char[][] JAVA_UTIL_ITERATOR = {JAVA, "util".toCharArray(), "Iterator".toCharArray()}; //$NON-NLS-1$//$NON-NLS-2$
105         char[][] JAVA_LANG_DEPRECATED = {JAVA, LANG, "Deprecated".toCharArray()}; //$NON-NLS-1$
106         char[][] JAVA_LANG_ANNOTATION_DOCUMENTED = {JAVA, LANG, ANNOTATION, "Documented".toCharArray()}; //$NON-NLS-1$
107         char[][] JAVA_LANG_ANNOTATION_INHERITED = {JAVA, LANG, ANNOTATION, "Inherited".toCharArray()}; //$NON-NLS-1$
108         char[][] JAVA_LANG_OVERRIDE = {JAVA, LANG, "Override".toCharArray()}; //$NON-NLS-1$
109         char[][] JAVA_LANG_ANNOTATION_RETENTION = {JAVA, LANG, ANNOTATION, "Retention".toCharArray()}; //$NON-NLS-1$
110         char[][] JAVA_LANG_SUPPRESSWARNINGS = {JAVA, LANG, "SuppressWarnings".toCharArray()}; //$NON-NLS-1$
111         char[][] JAVA_LANG_ANNOTATION_TARGET = {JAVA, LANG, ANNOTATION, "Target".toCharArray()}; //$NON-NLS-1$
112         char[][] JAVA_LANG_ANNOTATION_RETENTIONPOLICY = {JAVA, LANG, ANNOTATION, "RetentionPolicy".toCharArray()}; //$NON-NLS-1$
113         char[][] JAVA_LANG_ANNOTATION_ELEMENTTYPE = {JAVA, LANG, ANNOTATION, "ElementType".toCharArray()}; //$NON-NLS-1$
114         
115
116         // Constants used by the flow analysis
117         int EqualOrMoreSpecific = -1;
118         int NotRelated = 0;
119         int MoreGeneric = 1;
120
121         // Shared binding collections
122         TypeBinding[] NoParameters = new TypeBinding[0];
123         ReferenceBinding[] NoExceptions = new ReferenceBinding[0];
124         ReferenceBinding[] AnyException = new ReferenceBinding[] { null }; // special handler for all exceptions
125         FieldBinding[] NoFields = new FieldBinding[0];
126         MethodBinding[] NoMethods = new MethodBinding[0];
127         ReferenceBinding[] NoSuperInterfaces = new ReferenceBinding[0];
128         ReferenceBinding[] NoMemberTypes = new ReferenceBinding[0];
129         TypeVariableBinding[] NoTypeVariables = new TypeVariableBinding[0];
130         
131         // Synthetics
132         char[] INIT = "<init>".toCharArray(); //$NON-NLS-1$
133         char[] CLINIT = "<clinit>".toCharArray(); //$NON-NLS-1$
134         char[] SYNTHETIC_ENUM_VALUES = "ENUM$VALUES".toCharArray(); //$NON-NLS-1$
135         char[] SYNTHETIC_ASSERT_DISABLED = "$assertionsDisabled".toCharArray(); //$NON-NLS-1$
136         char[] SYNTHETIC_CLASS = "class$".toCharArray(); //$NON-NLS-1$
137         char[] SYNTHETIC_OUTER_LOCAL_PREFIX = "val$".toCharArray(); //$NON-NLS-1$
138         char[] SYNTHETIC_ENCLOSING_INSTANCE_PREFIX = "this$".toCharArray(); //$NON-NLS-1$
139         char[] SYNTHETIC_ACCESS_METHOD_PREFIX =  "access$".toCharArray(); //$NON-NLS-1$
140 }