33 * @author John Rose
34 */
35 class Constants {
36
37 private Constants(){}
38
39 public static final int JAVA_MAGIC = 0xCAFEBABE;
40
41 /*
42 Java Class Version numbers history
43 1.0 to 1.3.X 45,3
44 1.4 to 1.4.X 46,0
45 1.5 to 1.5.X 49,0
46 1.6 to 1.6.X 50,0
47 1.7 to 1.7.X 51,0
48 1.8 to 1.8.X 52,0
49 1.9 to 1.9.X 53,0
50 1.10 to 1.10.X 54,0
51 1.11 to 1.11.X 55,0
52 1.12 to 1.12.X 56,0
53 */
54
55 public static final Package.Version JAVA_MIN_CLASS_VERSION =
56 Package.Version.of(45, 03);
57
58 public static final Package.Version JAVA5_MAX_CLASS_VERSION =
59 Package.Version.of(49, 00);
60
61 public static final Package.Version JAVA6_MAX_CLASS_VERSION =
62 Package.Version.of(50, 00);
63
64 public static final Package.Version JAVA7_MAX_CLASS_VERSION =
65 Package.Version.of(51, 00);
66
67 public static final Package.Version JAVA8_MAX_CLASS_VERSION =
68 Package.Version.of(52, 00);
69
70 public static final Package.Version JAVA9_MAX_CLASS_VERSION =
71 Package.Version.of(53, 00);
72
73 public static final Package.Version JAVA10_MAX_CLASS_VERSION =
74 Package.Version.of(54, 00);
75
76 public static final Package.Version JAVA11_MAX_CLASS_VERSION =
77 Package.Version.of(55, 00);
78
79 public static final Package.Version JAVA12_MAX_CLASS_VERSION =
80 Package.Version.of(56, 00);
81
82 public static final int JAVA_PACKAGE_MAGIC = 0xCAFED00D;
83
84 public static final Package.Version JAVA5_PACKAGE_VERSION =
85 Package.Version.of(150, 7);
86
87 public static final Package.Version JAVA6_PACKAGE_VERSION =
88 Package.Version.of(160, 1);
89
90 public static final Package.Version JAVA7_PACKAGE_VERSION =
91 Package.Version.of(170, 1);
92
93 public static final Package.Version JAVA8_PACKAGE_VERSION =
94 Package.Version.of(171, 0);
95
96 // upper limit, should point to the latest class version
97 public static final Package.Version JAVA_MAX_CLASS_VERSION =
98 JAVA12_MAX_CLASS_VERSION;
99
100 // upper limit should point to the latest package version, for version info!.
101 public static final Package.Version MAX_PACKAGE_VERSION =
102 JAVA7_PACKAGE_VERSION;
103
104 public static final int CONSTANT_POOL_INDEX_LIMIT = 0x10000;
105 public static final int CONSTANT_POOL_NARROW_LIMIT = 0x00100;
106
107 public static final String JAVA_SIGNATURE_CHARS = "BSCIJFDZLV([";
108
109 public static final byte CONSTANT_Utf8 = 1;
110 public static final byte CONSTANT_unused2 = 2; // unused, was Unicode
111 public static final byte CONSTANT_Integer = 3;
112 public static final byte CONSTANT_Float = 4;
113 public static final byte CONSTANT_Long = 5;
114 public static final byte CONSTANT_Double = 6;
115 public static final byte CONSTANT_Class = 7;
116 public static final byte CONSTANT_String = 8;
117 public static final byte CONSTANT_Fieldref = 9;
118 public static final byte CONSTANT_Methodref = 10;
|
33 * @author John Rose
34 */
35 class Constants {
36
37 private Constants(){}
38
39 public static final int JAVA_MAGIC = 0xCAFEBABE;
40
41 /*
42 Java Class Version numbers history
43 1.0 to 1.3.X 45,3
44 1.4 to 1.4.X 46,0
45 1.5 to 1.5.X 49,0
46 1.6 to 1.6.X 50,0
47 1.7 to 1.7.X 51,0
48 1.8 to 1.8.X 52,0
49 1.9 to 1.9.X 53,0
50 1.10 to 1.10.X 54,0
51 1.11 to 1.11.X 55,0
52 1.12 to 1.12.X 56,0
53 1.13 to 1.13.X 57,0
54 */
55
56 public static final Package.Version JAVA_MIN_CLASS_VERSION =
57 Package.Version.of(45, 03);
58
59 public static final Package.Version JAVA5_MAX_CLASS_VERSION =
60 Package.Version.of(49, 00);
61
62 public static final Package.Version JAVA6_MAX_CLASS_VERSION =
63 Package.Version.of(50, 00);
64
65 public static final Package.Version JAVA7_MAX_CLASS_VERSION =
66 Package.Version.of(51, 00);
67
68 public static final Package.Version JAVA8_MAX_CLASS_VERSION =
69 Package.Version.of(52, 00);
70
71 public static final Package.Version JAVA9_MAX_CLASS_VERSION =
72 Package.Version.of(53, 00);
73
74 public static final Package.Version JAVA10_MAX_CLASS_VERSION =
75 Package.Version.of(54, 00);
76
77 public static final Package.Version JAVA11_MAX_CLASS_VERSION =
78 Package.Version.of(55, 00);
79
80 public static final Package.Version JAVA12_MAX_CLASS_VERSION =
81 Package.Version.of(56, 00);
82
83 public static final Package.Version JAVA13_MAX_CLASS_VERSION =
84 Package.Version.of(57, 00);
85
86 public static final int JAVA_PACKAGE_MAGIC = 0xCAFED00D;
87
88 public static final Package.Version JAVA5_PACKAGE_VERSION =
89 Package.Version.of(150, 7);
90
91 public static final Package.Version JAVA6_PACKAGE_VERSION =
92 Package.Version.of(160, 1);
93
94 public static final Package.Version JAVA7_PACKAGE_VERSION =
95 Package.Version.of(170, 1);
96
97 public static final Package.Version JAVA8_PACKAGE_VERSION =
98 Package.Version.of(171, 0);
99
100 // upper limit, should point to the latest class version
101 public static final Package.Version JAVA_MAX_CLASS_VERSION =
102 JAVA13_MAX_CLASS_VERSION;
103
104 // upper limit should point to the latest package version, for version info!.
105 public static final Package.Version MAX_PACKAGE_VERSION =
106 JAVA7_PACKAGE_VERSION;
107
108 public static final int CONSTANT_POOL_INDEX_LIMIT = 0x10000;
109 public static final int CONSTANT_POOL_NARROW_LIMIT = 0x00100;
110
111 public static final String JAVA_SIGNATURE_CHARS = "BSCIJFDZLV([";
112
113 public static final byte CONSTANT_Utf8 = 1;
114 public static final byte CONSTANT_unused2 = 2; // unused, was Unicode
115 public static final byte CONSTANT_Integer = 3;
116 public static final byte CONSTANT_Float = 4;
117 public static final byte CONSTANT_Long = 5;
118 public static final byte CONSTANT_Double = 6;
119 public static final byte CONSTANT_Class = 7;
120 public static final byte CONSTANT_String = 8;
121 public static final byte CONSTANT_Fieldref = 9;
122 public static final byte CONSTANT_Methodref = 10;
|