99 public final static int REF_newInvokeSpecial = 8;
100 public final static int REF_invokeInterface = 9;
101
102 public final static int MAX_PARAMETERS = 0xff;
103 public final static int MAX_DIMENSIONS = 0xff;
104 public final static int MAX_CODE = 0xffff;
105 public final static int MAX_LOCALS = 0xffff;
106 public final static int MAX_STACK = 0xffff;
107
108 public final static int PREVIEW_MINOR_VERSION = 0xffff;
109
110 public enum Version {
111 V45_3(45, 3), // base level for all attributes
112 V49(49, 0), // JDK 1.5: enum, generics, annotations
113 V50(50, 0), // JDK 1.6: stackmaps
114 V51(51, 0), // JDK 1.7
115 V52(52, 0), // JDK 1.8: lambda, type annos, param names
116 V53(53, 0), // JDK 1.9: modules, indy string concat
117 V54(54, 0), // JDK 10
118 V55(55, 0), // JDK 11: constant dynamic, nest mates
119 V56(56, 0); // JDK 12
120 Version(int major, int minor) {
121 this.major = major;
122 this.minor = minor;
123 }
124 public final int major, minor;
125
126 private static final Version MIN = values()[0];
127 /** Return the least version supported, MIN */
128 public static Version MIN() { return MIN; }
129
130 private static final Version MAX = values()[values().length-1];
131 /** Return the largest version supported, MAX */
132 public static Version MAX() { return MAX; }
133 }
134
135
136 /************************************************************************
137 * String Translation Routines
138 ***********************************************************************/
139
|
99 public final static int REF_newInvokeSpecial = 8;
100 public final static int REF_invokeInterface = 9;
101
102 public final static int MAX_PARAMETERS = 0xff;
103 public final static int MAX_DIMENSIONS = 0xff;
104 public final static int MAX_CODE = 0xffff;
105 public final static int MAX_LOCALS = 0xffff;
106 public final static int MAX_STACK = 0xffff;
107
108 public final static int PREVIEW_MINOR_VERSION = 0xffff;
109
110 public enum Version {
111 V45_3(45, 3), // base level for all attributes
112 V49(49, 0), // JDK 1.5: enum, generics, annotations
113 V50(50, 0), // JDK 1.6: stackmaps
114 V51(51, 0), // JDK 1.7
115 V52(52, 0), // JDK 1.8: lambda, type annos, param names
116 V53(53, 0), // JDK 1.9: modules, indy string concat
117 V54(54, 0), // JDK 10
118 V55(55, 0), // JDK 11: constant dynamic, nest mates
119 V56(56, 0), // JDK 12
120 V57(57, 0); // JDK 13
121 Version(int major, int minor) {
122 this.major = major;
123 this.minor = minor;
124 }
125 public final int major, minor;
126
127 private static final Version MIN = values()[0];
128 /** Return the least version supported, MIN */
129 public static Version MIN() { return MIN; }
130
131 private static final Version MAX = values()[values().length-1];
132 /** Return the largest version supported, MAX */
133 public static Version MAX() { return MAX; }
134 }
135
136
137 /************************************************************************
138 * String Translation Routines
139 ***********************************************************************/
140
|