blob: fb90a1dfc0ed0a1071843d1a2c0143606dde3ee7 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
/* NSC -- new scala compiler
* Copyright 2005 LAMP/EPFL
* @author Martin Odersky
*/
// $Id$
package scala.tools.nsc.symtab.classfile;
object ClassfileConstants {
final val JAVA_MAGIC = 0xCAFEBABE;
final val JAVA_MAJOR_VERSION = 45;
final val JAVA_MINOR_VERSION = 3;
final val JAVA_ACC_PUBLIC = 0x0001;
final val JAVA_ACC_PRIVATE = 0x0002;
final val JAVA_ACC_PROTECTED = 0x0004;
final val JAVA_ACC_STATIC = 0x0008;
final val JAVA_ACC_FINAL = 0x0010;
final val JAVA_ACC_SUPER = 0x0020;
final val JAVA_ACC_SYNCHRONIZED = 0x0020;
final val JAVA_ACC_VOLATILE = 0x0040;
final val JAVA_ACC_BRIDGE = 0x0040;
final val JAVA_ACC_TRANSIENT = 0x0080;
final val JAVA_ACC_NATIVE = 0x0100;
final val JAVA_ACC_INTERFACE = 0x0200;
final val JAVA_ACC_ABSTRACT = 0x0400;
final val JAVA_ACC_STRICT = 0x0800;
final val JAVA_ACC_SYNTHETIC = 0x1000;
// tags describing the type of a literal in the constant pool
final val CONSTANT_UTF8 = 1;
final val CONSTANT_UNICODE = 2;
final val CONSTANT_INTEGER = 3;
final val CONSTANT_FLOAT = 4;
final val CONSTANT_LONG = 5;
final val CONSTANT_DOUBLE = 6;
final val CONSTANT_CLASS = 7;
final val CONSTANT_STRING = 8;
final val CONSTANT_FIELDREF = 9;
final val CONSTANT_METHODREF = 10;
final val CONSTANT_INTFMETHODREF = 11;
final val CONSTANT_NAMEANDTYPE = 12;
// tags desribing the type of a literal in attribute values
final val BYTE_TAG = 'B';
final val CHAR_TAG = 'C';
final val DOUBLE_TAG = 'D';
final val FLOAT_TAG = 'F';
final val INT_TAG = 'I';
final val LONG_TAG = 'J';
final val SHORT_TAG = 'S';
final val BOOL_TAG = 'Z';
final val STRING_TAG = 's';
final val ENUM_TAG = 'e';
final val CLASS_TAG = 'c';
final val ARRAY_TAG = '[';
final val ANNOTATION_TAG = '@';
}
|