~ubuntu-branches/ubuntu/trusty/proguard/trusty

« back to all changes in this revision

Viewing changes to src/proguard/classfile/ClassConstants.java

  • Committer: Package Import Robot
  • Author(s): tony mancill
  • Date: 2013-06-06 21:43:59 UTC
  • mfrom: (7.1.1 quantal)
  • Revision ID: package-import@ubuntu.com-20130606214359-anr49am8ewoj0taa
Tags: 4.8-0.1
* Non-maintainer upload.
* New upstream release. (Closes: #678049, #643255)
* Sync changes from Ubuntu packaging.
  - Thank you to Sebastian Carneiro.
* Bump Standards-Version to 3.9.4.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
 * ProGuard -- shrinking, optimization, obfuscation, and preverification
3
3
 *             of Java bytecode.
4
4
 *
5
 
 * Copyright (c) 2002-2009 Eric Lafortune (eric@graphics.cornell.edu)
 
5
 * Copyright (c) 2002-2012 Eric Lafortune (eric@graphics.cornell.edu)
6
6
 *
7
7
 * This program is free software; you can redistribute it and/or modify it
8
8
 * under the terms of the GNU General Public License as published by the Free
43
43
    public static final int INTERNAL_CLASS_VERSION_1_5_MINOR = 0;
44
44
    public static final int INTERNAL_CLASS_VERSION_1_6_MAJOR = 50;
45
45
    public static final int INTERNAL_CLASS_VERSION_1_6_MINOR = 0;
 
46
    public static final int INTERNAL_CLASS_VERSION_1_7_MAJOR = 51;
 
47
    public static final int INTERNAL_CLASS_VERSION_1_7_MINOR = 0;
46
48
 
47
49
    public static final int INTERNAL_CLASS_VERSION_1_0 = (INTERNAL_CLASS_VERSION_1_0_MAJOR << 16) | INTERNAL_CLASS_VERSION_1_0_MINOR;
48
50
    public static final int INTERNAL_CLASS_VERSION_1_2 = (INTERNAL_CLASS_VERSION_1_2_MAJOR << 16) | INTERNAL_CLASS_VERSION_1_2_MINOR;
50
52
    public static final int INTERNAL_CLASS_VERSION_1_4 = (INTERNAL_CLASS_VERSION_1_4_MAJOR << 16) | INTERNAL_CLASS_VERSION_1_4_MINOR;
51
53
    public static final int INTERNAL_CLASS_VERSION_1_5 = (INTERNAL_CLASS_VERSION_1_5_MAJOR << 16) | INTERNAL_CLASS_VERSION_1_5_MINOR;
52
54
    public static final int INTERNAL_CLASS_VERSION_1_6 = (INTERNAL_CLASS_VERSION_1_6_MAJOR << 16) | INTERNAL_CLASS_VERSION_1_6_MINOR;
 
55
    public static final int INTERNAL_CLASS_VERSION_1_7 = (INTERNAL_CLASS_VERSION_1_7_MAJOR << 16) | INTERNAL_CLASS_VERSION_1_7_MINOR;
53
56
 
54
57
    public static final String EXTERNAL_CLASS_VERSION_1_0       = "1.0";
55
58
    public static final String EXTERNAL_CLASS_VERSION_1_1       = "1.1";
58
61
    public static final String EXTERNAL_CLASS_VERSION_1_4       = "1.4";
59
62
    public static final String EXTERNAL_CLASS_VERSION_1_5       = "1.5";
60
63
    public static final String EXTERNAL_CLASS_VERSION_1_6       = "1.6";
 
64
    public static final String EXTERNAL_CLASS_VERSION_1_7       = "1.7";
61
65
    public static final String EXTERNAL_CLASS_VERSION_1_5_ALIAS = "5";
62
66
    public static final String EXTERNAL_CLASS_VERSION_1_6_ALIAS = "6";
 
67
    public static final String EXTERNAL_CLASS_VERSION_1_7_ALIAS = "7";
63
68
 
64
69
    public static final int INTERNAL_ACC_PUBLIC       = 0x0001;
65
70
    public static final int INTERNAL_ACC_PRIVATE      = 0x0002;
119
124
    public static final String EXTERNAL_ACC_SYNCHRONIZED = "synchronized";
120
125
    public static final String EXTERNAL_ACC_VOLATILE     = "volatile";
121
126
    public static final String EXTERNAL_ACC_TRANSIENT    = "transient";
 
127
    public static final String EXTERNAL_ACC_BRIDGE       = "bridge";
 
128
    public static final String EXTERNAL_ACC_VARARGS      = "varargs";
122
129
    public static final String EXTERNAL_ACC_NATIVE       = "native";
123
130
    public static final String EXTERNAL_ACC_INTERFACE    = "interface";
124
131
    public static final String EXTERNAL_ACC_ABSTRACT     = "abstract";
125
132
    public static final String EXTERNAL_ACC_STRICT       = "strictfp";
 
133
    public static final String EXTERNAL_ACC_SYNTHETIC    = "synthetic";
126
134
    public static final String EXTERNAL_ACC_ANNOTATION   = "@";
127
135
    public static final String EXTERNAL_ACC_ENUM         = "enum";
128
136
 
137
145
    public static final int CONSTANT_Methodref          = 10;
138
146
    public static final int CONSTANT_InterfaceMethodref = 11;
139
147
    public static final int CONSTANT_NameAndType        = 12;
140
 
 
 
148
    public static final int CONSTANT_MethodHandle       = 15;
 
149
    public static final int CONSTANT_MethodType         = 16;
 
150
    public static final int CONSTANT_InvokeDynamic      = 18;
 
151
 
 
152
    public static final int REF_getField         = 1;
 
153
    public static final int REF_getStatic        = 2;
 
154
    public static final int REF_putField         = 3;
 
155
    public static final int REF_putStatic        = 4;
 
156
    public static final int REF_invokeVirtual    = 5;
 
157
    public static final int REF_invokeStatic     = 6;
 
158
    public static final int REF_invokeSpecial    = 7;
 
159
    public static final int REF_newInvokeSpecial = 8;
 
160
    public static final int REF_invokeInterface  = 9;
 
161
 
 
162
    public static final String ATTR_BootstrapMethods                     = "BootstrapMethods";
141
163
    public static final String ATTR_SourceFile                           = "SourceFile";
142
164
    public static final String ATTR_SourceDir                            = "SourceDir";
143
165
    public static final String ATTR_InnerClasses                         = "InnerClasses";
179
201
    public static final char INTERNAL_METHOD_ARGUMENTS_OPEN  = '(';
180
202
    public static final char INTERNAL_METHOD_ARGUMENTS_CLOSE = ')';
181
203
 
182
 
    public static final String INTERNAL_PACKAGE_JAVA_LANG         = "java/lang/";
183
 
    public static final String INTERNAL_NAME_JAVA_LANG_OBJECT     = "java/lang/Object";
184
 
    public static final String INTERNAL_TYPE_JAVA_LANG_OBJECT     = "Ljava/lang/Object;";
185
 
    public static final String INTERNAL_NAME_JAVA_LANG_CLONEABLE  = "java/lang/Cloneable";
186
 
    public static final String INTERNAL_NAME_JAVA_LANG_THROWABLE  = "java/lang/Throwable";
187
 
    public static final String INTERNAL_NAME_JAVA_LANG_CLASS      = "java/lang/Class";
188
 
    public static final String INTERNAL_NAME_JAVA_LANG_STRING     = "java/lang/String";
189
 
    public static final String INTERNAL_NAME_JAVA_IO_SERIALIZABLE = "java/io/Serializable";
 
204
    public static final String INTERNAL_PACKAGE_JAVA_LANG                   = "java/lang/";
 
205
    public static final String INTERNAL_NAME_JAVA_LANG_OBJECT               = "java/lang/Object";
 
206
    public static final String INTERNAL_TYPE_JAVA_LANG_OBJECT               = "Ljava/lang/Object;";
 
207
    public static final String INTERNAL_NAME_JAVA_LANG_CLONEABLE            = "java/lang/Cloneable";
 
208
    public static final String INTERNAL_NAME_JAVA_LANG_THROWABLE            = "java/lang/Throwable";
 
209
    public static final String INTERNAL_NAME_JAVA_LANG_CLASS                = "java/lang/Class";
 
210
    public static final String INTERNAL_NAME_JAVA_LANG_STRING               = "java/lang/String";
 
211
    public static final String INTERNAL_NAME_JAVA_LANG_STRING_BUFFER        = "java/lang/StringBuffer";
 
212
    public static final String INTERNAL_NAME_JAVA_LANG_STRING_BUILDER       = "java/lang/StringBuilder";
 
213
    public static final String INTERNAL_NAME_JAVA_LANG_INVOKE_METHOD_HANDLE = "java/lang/invoke/MethodHandle";
 
214
    public static final String INTERNAL_NAME_JAVA_LANG_INVOKE_METHOD_TYPE   = "java/lang/invoke/MethodType";
 
215
    public static final String INTERNAL_NAME_JAVA_IO_SERIALIZABLE           = "java/io/Serializable";
 
216
 
 
217
    public static final String INTERNAL_NAME_JAVA_UTIL_CONCURRENT_ATOMIC_ATOMIC_INTEGER_FIELD_UPDATER   = "java/util/concurrent/atomic/AtomicIntegerFieldUpdater";
 
218
    public static final String INTERNAL_NAME_JAVA_UTIL_CONCURRENT_ATOMIC_ATOMIC_LONG_FIELD_UPDATER      = "java/util/concurrent/atomic/AtomicLongFieldUpdater";
 
219
    public static final String INTERNAL_NAME_JAVA_UTIL_CONCURRENT_ATOMIC_ATOMIC_REFERENCE_FIELD_UPDATER = "java/util/concurrent/atomic/AtomicReferenceFieldUpdater";
190
220
 
191
221
    public static final String INTERNAL_METHOD_NAME_INIT   = "<init>";
192
222
    public static final String INTERNAL_METHOD_TYPE_INIT   = "()V";
193
223
    public static final String INTERNAL_METHOD_NAME_CLINIT = "<clinit>";
194
224
    public static final String INTERNAL_METHOD_TYPE_CLINIT = "()V";
195
225
 
196
 
    public static final String INTERNAL_METHOD_NAME_CLASS_FOR_NAME            = "forName";
197
 
    public static final String INTERNAL_METHOD_TYPE_CLASS_FOR_NAME            = "(Ljava/lang/String;)Ljava/lang/Class;";
198
 
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_COMPONENT_TYPE  = "getComponentType";
199
 
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_COMPONENT_TYPE  = "()Ljava/lang/Class;";
200
 
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_FIELD           = "getField";
201
 
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_FIELD           = "(Ljava/lang/String;)Ljava/lang/reflect/Field;";
202
 
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_DECLARED_FIELD  = "getDeclaredField";
203
 
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_DECLARED_FIELD  = "(Ljava/lang/String;)Ljava/lang/reflect/Field;";
204
 
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_METHOD          = "getMethod";
205
 
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_METHOD          = "(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;";
206
 
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_DECLARED_METHOD = "getDeclaredMethod";
207
 
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_DECLARED_METHOD = "(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;";
 
226
    public static final String INTERNAL_METHOD_NAME_CLASS_FOR_NAME                      = "forName";
 
227
    public static final String INTERNAL_METHOD_TYPE_CLASS_FOR_NAME                      = "(Ljava/lang/String;)Ljava/lang/Class;";
 
228
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_COMPONENT_TYPE            = "getComponentType";
 
229
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_COMPONENT_TYPE            = "()Ljava/lang/Class;";
 
230
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_FIELD                     = "getField";
 
231
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_FIELD                     = "(Ljava/lang/String;)Ljava/lang/reflect/Field;";
 
232
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_DECLARED_FIELD            = "getDeclaredField";
 
233
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_DECLARED_FIELD            = "(Ljava/lang/String;)Ljava/lang/reflect/Field;";
 
234
    public static final String INTERNAL_CONSTRUCTOR_NAME_CLASS_GET_CONSTRUCTOR          = "getConstructor";
 
235
    public static final String INTERNAL_CONSTRUCTOR_TYPE_CLASS_GET_CONSTRUCTOR          = "([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;";
 
236
    public static final String INTERNAL_CONSTRUCTOR_NAME_CLASS_GET_DECLARED_CONSTRUCTOR = "getDeclaredConstructor";
 
237
    public static final String INTERNAL_CONSTRUCTOR_TYPE_CLASS_GET_DECLARED_CONSTRUCTOR = "([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;";
 
238
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_METHOD                    = "getMethod";
 
239
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_METHOD                    = "(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;";
 
240
    public static final String INTERNAL_METHOD_NAME_CLASS_GET_DECLARED_METHOD           = "getDeclaredMethod";
 
241
    public static final String INTERNAL_METHOD_TYPE_CLASS_GET_DECLARED_METHOD           = "(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;";
 
242
    public static final String INTERNAL_METHOD_NAME_NEW_UPDATER                         = "newUpdater";
 
243
    public static final String INTERNAL_METHOD_TYPE_NEW_INTEGER_UPDATER                 = "(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;";
 
244
    public static final String INTERNAL_METHOD_TYPE_NEW_LONG_UPDATER                    = "(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;";
 
245
    public static final String INTERNAL_METHOD_TYPE_NEW_REFERENCE_UPDATER               = "(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;";
208
246
 
209
247
    public static final String INTERNAL_METHOD_NAME_DOT_CLASS_JAVAC = "class$";
210
248
    public static final String INTERNAL_METHOD_TYPE_DOT_CLASS_JAVAC = "(Ljava/lang/String;)Ljava/lang/Class;";
214
252
    public static final String INTERNAL_METHOD_NAME_NEW_INSTANCE = "newInstance";
215
253
    public static final String INTERNAL_METHOD_TYPE_NEW_INSTANCE = "()Ljava/lang/Object;";
216
254
 
 
255
    public static final String INTERNAL_METHOD_NAME_EQUALS                 = "equals";
 
256
    public static final String INTERNAL_METHOD_TYPE_EQUALS                 = "(Ljava/lang/Object;)Z";
 
257
    public static final String INTERNAL_METHOD_NAME_LENGTH                 = "length";
 
258
    public static final String INTERNAL_METHOD_NAME_VALUEOF                = "valueOf";
 
259
    public static final String INTERNAL_METHOD_TYPE_VALUEOF_BOOLEAN        = "(Z)Ljava/lang/String;";
 
260
    public static final String INTERNAL_METHOD_TYPE_VALUEOF_CHAR           = "(C)Ljava/lang/String;";
 
261
    public static final String INTERNAL_METHOD_TYPE_VALUEOF_INT            = "(I)Ljava/lang/String;";
 
262
    public static final String INTERNAL_METHOD_TYPE_VALUEOF_LONG           = "(J)Ljava/lang/String;";
 
263
    public static final String INTERNAL_METHOD_TYPE_VALUEOF_FLOAT          = "(F)Ljava/lang/String;";
 
264
    public static final String INTERNAL_METHOD_TYPE_VALUEOF_DOUBLE         = "(D)Ljava/lang/String;";
 
265
    public static final String INTERNAL_METHOD_TYPE_VALUEOF_OBJECT         = "(Ljava/lang/Object;)Ljava/lang/String;";
 
266
 
 
267
    public static final String INTERNAL_METHOD_TYPE_LENGTH                 = "()I";
 
268
    public static final String INTERNAL_METHOD_NAME_APPEND                 = "append";
 
269
    public static final String INTERNAL_METHOD_TYPE_STRING_VOID            = "(Ljava/lang/String;)V";
 
270
    public static final String INTERNAL_METHOD_TYPE_BOOLEAN_STRING_BUFFER  = "(Z)Ljava/lang/StringBuffer;";
 
271
    public static final String INTERNAL_METHOD_TYPE_CHAR_STRING_BUFFER     = "(C)Ljava/lang/StringBuffer;";
 
272
    public static final String INTERNAL_METHOD_TYPE_INT_STRING_BUFFER      = "(I)Ljava/lang/StringBuffer;";
 
273
    public static final String INTERNAL_METHOD_TYPE_LONG_STRING_BUFFER     = "(J)Ljava/lang/StringBuffer;";
 
274
    public static final String INTERNAL_METHOD_TYPE_FLOAT_STRING_BUFFER    = "(F)Ljava/lang/StringBuffer;";
 
275
    public static final String INTERNAL_METHOD_TYPE_DOUBLE_STRING_BUFFER   = "(D)Ljava/lang/StringBuffer;";
 
276
    public static final String INTERNAL_METHOD_TYPE_STRING_STRING_BUFFER   = "(Ljava/lang/String;)Ljava/lang/StringBuffer;";
 
277
    public static final String INTERNAL_METHOD_TYPE_OBJECT_STRING_BUFFER   = "(Ljava/lang/Object;)Ljava/lang/StringBuffer;";
 
278
    public static final String INTERNAL_METHOD_TYPE_BOOLEAN_STRING_BUILDER = "(Z)Ljava/lang/StringBuilder;";
 
279
    public static final String INTERNAL_METHOD_TYPE_CHAR_STRING_BUILDER    = "(C)Ljava/lang/StringBuilder;";
 
280
    public static final String INTERNAL_METHOD_TYPE_INT_STRING_BUILDER     = "(I)Ljava/lang/StringBuilder;";
 
281
    public static final String INTERNAL_METHOD_TYPE_LONG_STRING_BUILDER    = "(J)Ljava/lang/StringBuilder;";
 
282
    public static final String INTERNAL_METHOD_TYPE_FLOAT_STRING_BUILDER   = "(F)Ljava/lang/StringBuilder;";
 
283
    public static final String INTERNAL_METHOD_TYPE_DOUBLE_STRING_BUILDER  = "(D)Ljava/lang/StringBuilder;";
 
284
    public static final String INTERNAL_METHOD_TYPE_STRING_STRING_BUILDER  = "(Ljava/lang/String;)Ljava/lang/StringBuilder;";
 
285
    public static final String INTERNAL_METHOD_TYPE_OBJECT_STRING_BUILDER  = "(Ljava/lang/Object;)Ljava/lang/StringBuilder;";
 
286
    public static final String INTERNAL_METHOD_NAME_TOSTRING               = "toString";
 
287
    public static final String INTERNAL_METHOD_TYPE_TOSTRING               = "()Ljava/lang/String;";
 
288
 
217
289
    public static final char INTERNAL_TYPE_VOID                   = 'V';
218
290
    public static final char INTERNAL_TYPE_BOOLEAN                = 'Z';
219
291
    public static final char INTERNAL_TYPE_BYTE                   = 'B';