001/*
002 * Licensed to the Apache Software Foundation (ASF) under one
003 * or more contributor license agreements.  See the NOTICE file
004 * distributed with this work for additional information
005 * regarding copyright ownership.  The ASF licenses this file
006 * to you under the Apache License, Version 2.0 (the
007 * "License"); you may not use this file except in compliance
008 * with the License.  You may obtain a copy of the License at
009 *
010 *   https://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing,
013 * software distributed under the License is distributed on an
014 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015 * KIND, either express or implied.  See the License for the
016 * specific language governing permissions and limitations
017 * under the License.
018 */
019package org.apache.bcel;
020
021/**
022 * Constants for the project, mostly defined in the JVM specification.
023 *
024 * @deprecated (since 6.0) DO NOT USE - use {@link Const} instead.
025 */
026@Deprecated
027public interface Constants {
028
029    /**
030     * Major version number of class files for Java 1.1.
031     *
032     * @see #MINOR_1_1
033     */
034    short MAJOR_1_1 = Const.MAJOR_1_1;
035
036    /**
037     * Minor version number of class files for Java 1.1.
038     *
039     * @see #MAJOR_1_1
040     */
041    short MINOR_1_1 = Const.MINOR_1_1;
042
043    /**
044     * Major version number of class files for Java 1.2.
045     *
046     * @see #MINOR_1_2
047     */
048    short MAJOR_1_2 = Const.MAJOR_1_2;
049
050    /**
051     * Minor version number of class files for Java 1.2.
052     *
053     * @see #MAJOR_1_2
054     */
055    short MINOR_1_2 = Const.MINOR_1_2;
056
057    /**
058     * Major version number of class files for Java 1.2.
059     *
060     * @see #MINOR_1_2
061     */
062    short MAJOR_1_3 = Const.MAJOR_1_3;
063
064    /**
065     * Minor version number of class files for Java 1.3.
066     *
067     * @see #MAJOR_1_3
068     */
069    short MINOR_1_3 = Const.MINOR_1_3;
070
071    /**
072     * Major version number of class files for Java 1.3.
073     *
074     * @see #MINOR_1_3
075     */
076    short MAJOR_1_4 = Const.MAJOR_1_4;
077
078    /**
079     * Minor version number of class files for Java 1.4.
080     *
081     * @see #MAJOR_1_4
082     */
083    short MINOR_1_4 = Const.MINOR_1_4;
084
085    /**
086     * Major version number of class files for Java 1.4.
087     *
088     * @see #MINOR_1_4
089     */
090    short MAJOR_1_5 = Const.MAJOR_1_5;
091
092    /**
093     * Minor version number of class files for Java 1.5.
094     *
095     * @see #MAJOR_1_5
096     */
097    short MINOR_1_5 = Const.MINOR_1_5;
098
099    /**
100     * Default major version number. Class file is for Java 1.1.
101     *
102     * @see #MAJOR_1_1
103     */
104    short MAJOR = Const.MAJOR;
105
106    /**
107     * Default major version number. Class file is for Java 1.1.
108     *
109     * @see #MAJOR_1_1
110     */
111    short MINOR = Const.MINOR;
112
113    /**
114     * Maximum value for an unsigned short.
115     */
116    int MAX_SHORT = Const.MAX_SHORT; // 2^16 - 1
117
118    /**
119     * Maximum value for an unsigned byte.
120     */
121    int MAX_BYTE = Const.MAX_BYTE; // 2^8 - 1
122
123    /**
124     * One of the access flags for fields, methods, or classes.
125     *
126     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.5"> Flag definitions for Fields
127     *      in the Java Virtual Machine Specification (Java SE 8 Edition).</a>
128     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.6"> Flag definitions for Methods
129     *      in the Java Virtual Machine Specification (Java SE 8 Edition).</a>
130     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.6-300-D.1-D.1"> Flag
131     *      definitions for Classes in the Java Virtual Machine Specification (Java SE 8 Edition).</a>
132     */
133    short ACC_PUBLIC = Const.ACC_PUBLIC;
134
135    /**
136     * One of the access flags for fields, methods, or classes.
137     *
138     * @see #ACC_PUBLIC
139     */
140    short ACC_PRIVATE = Const.ACC_PRIVATE;
141
142    /**
143     * One of the access flags for fields, methods, or classes.
144     *
145     * @see #ACC_PUBLIC
146     */
147    short ACC_PROTECTED = Const.ACC_PROTECTED;
148
149    /**
150     * One of the access flags for fields, methods, or classes.
151     *
152     * @see #ACC_PUBLIC
153     */
154    short ACC_STATIC = Const.ACC_STATIC;
155
156    /**
157     * One of the access flags for fields, methods, or classes.
158     *
159     * @see #ACC_PUBLIC
160     */
161    short ACC_FINAL = Const.ACC_FINAL;
162
163    /**
164     * One of the access flags for fields, methods, or classes.
165     *
166     * @see #ACC_PUBLIC
167     */
168    short ACC_SYNCHRONIZED = Const.ACC_SYNCHRONIZED;
169
170    /**
171     * One of the access flags for fields, methods, or classes.
172     *
173     * @see #ACC_PUBLIC
174     */
175    short ACC_VOLATILE = Const.ACC_VOLATILE;
176
177    /**
178     * One of the access flags for fields, methods, or classes.
179     *
180     * @see #ACC_PUBLIC
181     */
182    short ACC_BRIDGE = Const.ACC_BRIDGE;
183
184    /**
185     * One of the access flags for fields, methods, or classes.
186     *
187     * @see #ACC_PUBLIC
188     */
189    short ACC_TRANSIENT = Const.ACC_TRANSIENT;
190
191    /**
192     * One of the access flags for fields, methods, or classes.
193     *
194     * @see #ACC_PUBLIC
195     */
196    short ACC_VARARGS = Const.ACC_VARARGS;
197
198    /**
199     * One of the access flags for fields, methods, or classes.
200     *
201     * @see #ACC_PUBLIC
202     */
203    short ACC_NATIVE = Const.ACC_NATIVE;
204
205    /**
206     * One of the access flags for fields, methods, or classes.
207     *
208     * @see #ACC_PUBLIC
209     */
210    short ACC_INTERFACE = Const.ACC_INTERFACE;
211
212    /**
213     * One of the access flags for fields, methods, or classes.
214     *
215     * @see #ACC_PUBLIC
216     */
217    short ACC_ABSTRACT = Const.ACC_ABSTRACT;
218
219    /**
220     * One of the access flags for fields, methods, or classes.
221     *
222     * @see #ACC_PUBLIC
223     */
224    short ACC_STRICT = Const.ACC_STRICT;
225
226    /**
227     * One of the access flags for fields, methods, or classes.
228     *
229     * @see #ACC_PUBLIC
230     */
231    short ACC_SYNTHETIC = Const.ACC_SYNTHETIC;
232
233    /**
234     * One of the access flags for fields, methods, or classes.
235     *
236     * @see #ACC_PUBLIC
237     */
238    short ACC_ANNOTATION = Const.ACC_ANNOTATION;
239
240    /**
241     * One of the access flags for fields, methods, or classes.
242     *
243     * @see #ACC_PUBLIC
244     */
245    short ACC_ENUM = Const.ACC_ENUM;
246
247    // Applies to classes compiled by new compilers only
248
249    /**
250     * One of the access flags for fields, methods, or classes.
251     *
252     * @see #ACC_PUBLIC
253     */
254    short ACC_SUPER = Const.ACC_SUPER;
255
256    /**
257     * One of the access flags for fields, methods, or classes.
258     *
259     * @see #ACC_PUBLIC
260     */
261    short MAX_ACC_FLAG = Const.MAX_ACC_FLAG;
262
263    /** The names of the access flags. */
264    String[] ACCESS_NAMES = {"public", "private", "protected", "static", "final", "synchronized", "volatile", "transient", "native", "interface", "abstract",
265        "strictfp", "synthetic", "annotation", "enum"};
266
267    /** Marks a constant pool entry as type UTF-8. */
268    byte CONSTANT_Utf8 = Const.CONSTANT_Utf8;
269
270    /** Marks a constant pool entry as type Integer. */
271    byte CONSTANT_Integer = Const.CONSTANT_Integer;
272
273    /** Marks a constant pool entry as type Float. */
274    byte CONSTANT_Float = Const.CONSTANT_Float;
275
276    /** Marks a constant pool entry as type Long. */
277    byte CONSTANT_Long = Const.CONSTANT_Long;
278
279    /** Marks a constant pool entry as type Double. */
280    byte CONSTANT_Double = Const.CONSTANT_Double;
281
282    /** Marks a constant pool entry as a Class. */
283    byte CONSTANT_Class = Const.CONSTANT_Class;
284
285    /** Marks a constant pool entry as a Field Reference. */
286    byte CONSTANT_Fieldref = Const.CONSTANT_Fieldref;
287
288    /** Marks a constant pool entry as type String. */
289    byte CONSTANT_String = Const.CONSTANT_String;
290
291    /** Marks a constant pool entry as a Method Reference. */
292    byte CONSTANT_Methodref = Const.CONSTANT_Methodref;
293
294    /** Marks a constant pool entry as an Interface Method Reference. */
295    byte CONSTANT_InterfaceMethodref = Const.CONSTANT_InterfaceMethodref;
296
297    /** Marks a constant pool entry as a name and type. */
298    byte CONSTANT_NameAndType = Const.CONSTANT_NameAndType;
299
300    /** The names of the types of entries in a constant pool. */
301    String[] CONSTANT_NAMES = {"", "CONSTANT_Utf8", "", "CONSTANT_Integer", "CONSTANT_Float", "CONSTANT_Long", "CONSTANT_Double", "CONSTANT_Class",
302        "CONSTANT_String", "CONSTANT_Fieldref", "CONSTANT_Methodref", "CONSTANT_InterfaceMethodref", "CONSTANT_NameAndType"};
303
304    /**
305     * The name of the static initializer, also called &quot;class initialization method&quot; or &quot;interface
306     * initialization method&quot;. This is &quot;&lt;clinit&gt;&quot;.
307     */
308    String STATIC_INITIALIZER_NAME = Const.STATIC_INITIALIZER_NAME;
309
310    /**
311     * The name of every constructor method in a class, also called &quot;instance initialization method&quot;. This is
312     * &quot;&lt;init&gt;&quot;.
313     */
314    String CONSTRUCTOR_NAME = Const.CONSTRUCTOR_NAME;
315
316    /** The names of the interfaces implemented by arrays */
317    String[] INTERFACES_IMPLEMENTED_BY_ARRAYS = {"java.lang.Cloneable", "java.io.Serializable"};
318
319    /**
320     * One of the limitations of the Java Virtual Machine.
321     *
322     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.11"> The Java Virtual Machine
323     *      Specification, Second Edition, page 152, chapter 4.10.</a>
324     */
325    int MAX_CP_ENTRIES = Const.MAX_CP_ENTRIES;
326
327    /**
328     * One of the limitations of the Java Virtual Machine.
329     *
330     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.11"> The Java Virtual Machine
331     *      Specification, Second Edition, page 152, chapter 4.10.</a>
332     */
333    int MAX_CODE_SIZE = Const.MAX_CODE_SIZE; // bytes
334
335    /**
336     * Java VM opcode.
337     *
338     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
339     *      Java Virtual Machine Specification</a>
340     */
341    short NOP = Const.NOP;
342
343    /**
344     * Java VM opcode.
345     *
346     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
347     *      Java Virtual Machine Specification</a>
348     */
349    short ACONST_NULL = Const.ACONST_NULL;
350
351    /**
352     * Java VM opcode.
353     *
354     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
355     *      Java Virtual Machine Specification</a>
356     */
357    short ICONST_M1 = Const.ICONST_M1;
358
359    /**
360     * Java VM opcode.
361     *
362     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
363     *      Java Virtual Machine Specification</a>
364     */
365    short ICONST_0 = Const.ICONST_0;
366
367    /**
368     * Java VM opcode.
369     *
370     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
371     *      Java Virtual Machine Specification</a>
372     */
373    short ICONST_1 = Const.ICONST_1;
374
375    /**
376     * Java VM opcode.
377     *
378     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
379     *      Java Virtual Machine Specification</a>
380     */
381    short ICONST_2 = Const.ICONST_2;
382
383    /**
384     * Java VM opcode.
385     *
386     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
387     *      Java Virtual Machine Specification</a>
388     */
389    short ICONST_3 = Const.ICONST_3;
390
391    /**
392     * Java VM opcode.
393     *
394     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
395     *      Java Virtual Machine Specification</a>
396     */
397    short ICONST_4 = Const.ICONST_4;
398
399    /**
400     * Java VM opcode.
401     *
402     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
403     *      Java Virtual Machine Specification</a>
404     */
405    short ICONST_5 = Const.ICONST_5;
406
407    /**
408     * Java VM opcode.
409     *
410     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
411     *      Java Virtual Machine Specification</a>
412     */
413    short LCONST_0 = Const.LCONST_0;
414
415    /**
416     * Java VM opcode.
417     *
418     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
419     *      Java Virtual Machine Specification</a>
420     */
421    short LCONST_1 = Const.LCONST_1;
422
423    /**
424     * Java VM opcode.
425     *
426     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
427     *      Java Virtual Machine Specification</a>
428     */
429    short FCONST_0 = Const.FCONST_0;
430
431    /**
432     * Java VM opcode.
433     *
434     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
435     *      Java Virtual Machine Specification</a>
436     */
437    short FCONST_1 = Const.FCONST_1;
438
439    /**
440     * Java VM opcode.
441     *
442     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
443     *      Java Virtual Machine Specification</a>
444     */
445    short FCONST_2 = Const.FCONST_2;
446
447    /**
448     * Java VM opcode.
449     *
450     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
451     *      Java Virtual Machine Specification</a>
452     */
453    short DCONST_0 = Const.DCONST_0;
454
455    /**
456     * Java VM opcode.
457     *
458     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
459     *      Java Virtual Machine Specification</a>
460     */
461    short DCONST_1 = Const.DCONST_1;
462
463    /**
464     * Java VM opcode.
465     *
466     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
467     *      Java Virtual Machine Specification</a>
468     */
469    short BIPUSH = Const.BIPUSH;
470
471    /**
472     * Java VM opcode.
473     *
474     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
475     *      Java Virtual Machine Specification</a>
476     */
477    short SIPUSH = Const.SIPUSH;
478
479    /**
480     * Java VM opcode.
481     *
482     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
483     *      Java Virtual Machine Specification</a>
484     */
485    short LDC = Const.LDC;
486
487    /**
488     * Java VM opcode.
489     *
490     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
491     *      Java Virtual Machine Specification</a>
492     */
493    short LDC_W = Const.LDC_W;
494
495    /**
496     * Java VM opcode.
497     *
498     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
499     *      Java Virtual Machine Specification</a>
500     */
501    short LDC2_W = Const.LDC2_W;
502
503    /**
504     * Java VM opcode.
505     *
506     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
507     *      Java Virtual Machine Specification</a>
508     */
509    short ILOAD = Const.ILOAD;
510
511    /**
512     * Java VM opcode.
513     *
514     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
515     *      Java Virtual Machine Specification</a>
516     */
517    short LLOAD = Const.LLOAD;
518
519    /**
520     * Java VM opcode.
521     *
522     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
523     *      Java Virtual Machine Specification</a>
524     */
525    short FLOAD = Const.FLOAD;
526
527    /**
528     * Java VM opcode.
529     *
530     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
531     *      Java Virtual Machine Specification</a>
532     */
533    short DLOAD = Const.DLOAD;
534
535    /**
536     * Java VM opcode.
537     *
538     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
539     *      Java Virtual Machine Specification</a>
540     */
541    short ALOAD = Const.ALOAD;
542
543    /**
544     * Java VM opcode.
545     *
546     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
547     *      Java Virtual Machine Specification</a>
548     */
549    short ILOAD_0 = Const.ILOAD_0;
550
551    /**
552     * Java VM opcode.
553     *
554     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
555     *      Java Virtual Machine Specification</a>
556     */
557    short ILOAD_1 = Const.ILOAD_1;
558
559    /**
560     * Java VM opcode.
561     *
562     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
563     *      Java Virtual Machine Specification</a>
564     */
565    short ILOAD_2 = Const.ILOAD_2;
566
567    /**
568     * Java VM opcode.
569     *
570     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
571     *      Java Virtual Machine Specification</a>
572     */
573    short ILOAD_3 = Const.ILOAD_3;
574
575    /**
576     * Java VM opcode.
577     *
578     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
579     *      Java Virtual Machine Specification</a>
580     */
581    short LLOAD_0 = Const.LLOAD_0;
582
583    /**
584     * Java VM opcode.
585     *
586     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
587     *      Java Virtual Machine Specification</a>
588     */
589    short LLOAD_1 = Const.LLOAD_1;
590
591    /**
592     * Java VM opcode.
593     *
594     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
595     *      Java Virtual Machine Specification</a>
596     */
597    short LLOAD_2 = Const.LLOAD_2;
598
599    /**
600     * Java VM opcode.
601     *
602     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
603     *      Java Virtual Machine Specification</a>
604     */
605    short LLOAD_3 = Const.LLOAD_3;
606
607    /**
608     * Java VM opcode.
609     *
610     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
611     *      Java Virtual Machine Specification</a>
612     */
613    short FLOAD_0 = Const.FLOAD_0;
614
615    /**
616     * Java VM opcode.
617     *
618     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
619     *      Java Virtual Machine Specification</a>
620     */
621    short FLOAD_1 = Const.FLOAD_1;
622
623    /**
624     * Java VM opcode.
625     *
626     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
627     *      Java Virtual Machine Specification</a>
628     */
629    short FLOAD_2 = Const.FLOAD_2;
630
631    /**
632     * Java VM opcode.
633     *
634     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
635     *      Java Virtual Machine Specification</a>
636     */
637    short FLOAD_3 = Const.FLOAD_3;
638
639    /**
640     * Java VM opcode.
641     *
642     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
643     *      Java Virtual Machine Specification</a>
644     */
645    short DLOAD_0 = Const.DLOAD_0;
646
647    /**
648     * Java VM opcode.
649     *
650     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
651     *      Java Virtual Machine Specification</a>
652     */
653    short DLOAD_1 = Const.DLOAD_1;
654
655    /**
656     * Java VM opcode.
657     *
658     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
659     *      Java Virtual Machine Specification</a>
660     */
661    short DLOAD_2 = Const.DLOAD_2;
662
663    /**
664     * Java VM opcode.
665     *
666     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
667     *      Java Virtual Machine Specification</a>
668     */
669    short DLOAD_3 = Const.DLOAD_3;
670
671    /**
672     * Java VM opcode.
673     *
674     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
675     *      Java Virtual Machine Specification</a>
676     */
677    short ALOAD_0 = Const.ALOAD_0;
678
679    /**
680     * Java VM opcode.
681     *
682     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
683     *      Java Virtual Machine Specification</a>
684     */
685    short ALOAD_1 = Const.ALOAD_1;
686
687    /**
688     * Java VM opcode.
689     *
690     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
691     *      Java Virtual Machine Specification</a>
692     */
693    short ALOAD_2 = Const.ALOAD_2;
694
695    /**
696     * Java VM opcode.
697     *
698     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
699     *      Java Virtual Machine Specification</a>
700     */
701    short ALOAD_3 = Const.ALOAD_3;
702
703    /**
704     * Java VM opcode.
705     *
706     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
707     *      Java Virtual Machine Specification</a>
708     */
709    short IALOAD = Const.IALOAD;
710
711    /**
712     * Java VM opcode.
713     *
714     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
715     *      Java Virtual Machine Specification</a>
716     */
717    short LALOAD = Const.LALOAD;
718
719    /**
720     * Java VM opcode.
721     *
722     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
723     *      Java Virtual Machine Specification</a>
724     */
725    short FALOAD = Const.FALOAD;
726
727    /**
728     * Java VM opcode.
729     *
730     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
731     *      Java Virtual Machine Specification</a>
732     */
733    short DALOAD = Const.DALOAD;
734
735    /**
736     * Java VM opcode.
737     *
738     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
739     *      Java Virtual Machine Specification</a>
740     */
741    short AALOAD = Const.AALOAD;
742
743    /**
744     * Java VM opcode.
745     *
746     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
747     *      Java Virtual Machine Specification</a>
748     */
749    short BALOAD = Const.BALOAD;
750
751    /**
752     * Java VM opcode.
753     *
754     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
755     *      Java Virtual Machine Specification</a>
756     */
757    short CALOAD = Const.CALOAD;
758
759    /**
760     * Java VM opcode.
761     *
762     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
763     *      Java Virtual Machine Specification</a>
764     */
765    short SALOAD = Const.SALOAD;
766
767    /**
768     * Java VM opcode.
769     *
770     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
771     *      Java Virtual Machine Specification</a>
772     */
773    short ISTORE = Const.ISTORE;
774
775    /**
776     * Java VM opcode.
777     *
778     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
779     *      Java Virtual Machine Specification</a>
780     */
781    short LSTORE = Const.LSTORE;
782
783    /**
784     * Java VM opcode.
785     *
786     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
787     *      Java Virtual Machine Specification</a>
788     */
789    short FSTORE = Const.FSTORE;
790
791    /**
792     * Java VM opcode.
793     *
794     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
795     *      Java Virtual Machine Specification</a>
796     */
797    short DSTORE = Const.DSTORE;
798
799    /**
800     * Java VM opcode.
801     *
802     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
803     *      Java Virtual Machine Specification</a>
804     */
805    short ASTORE = Const.ASTORE;
806
807    /**
808     * Java VM opcode.
809     *
810     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
811     *      Java Virtual Machine Specification</a>
812     */
813    short ISTORE_0 = Const.ISTORE_0;
814
815    /**
816     * Java VM opcode.
817     *
818     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
819     *      Java Virtual Machine Specification</a>
820     */
821    short ISTORE_1 = Const.ISTORE_1;
822
823    /**
824     * Java VM opcode.
825     *
826     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
827     *      Java Virtual Machine Specification</a>
828     */
829    short ISTORE_2 = Const.ISTORE_2;
830
831    /**
832     * Java VM opcode.
833     *
834     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
835     *      Java Virtual Machine Specification</a>
836     */
837    short ISTORE_3 = Const.ISTORE_3;
838
839    /**
840     * Java VM opcode.
841     *
842     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
843     *      Java Virtual Machine Specification</a>
844     */
845    short LSTORE_0 = Const.LSTORE_0;
846
847    /**
848     * Java VM opcode.
849     *
850     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
851     *      Java Virtual Machine Specification</a>
852     */
853    short LSTORE_1 = Const.LSTORE_1;
854
855    /**
856     * Java VM opcode.
857     *
858     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
859     *      Java Virtual Machine Specification</a>
860     */
861    short LSTORE_2 = Const.LSTORE_2;
862
863    /**
864     * Java VM opcode.
865     *
866     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
867     *      Java Virtual Machine Specification</a>
868     */
869    short LSTORE_3 = Const.LSTORE_3;
870
871    /**
872     * Java VM opcode.
873     *
874     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
875     *      Java Virtual Machine Specification</a>
876     */
877    short FSTORE_0 = Const.FSTORE_0;
878
879    /**
880     * Java VM opcode.
881     *
882     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
883     *      Java Virtual Machine Specification</a>
884     */
885    short FSTORE_1 = Const.FSTORE_1;
886
887    /**
888     * Java VM opcode.
889     *
890     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
891     *      Java Virtual Machine Specification</a>
892     */
893    short FSTORE_2 = Const.FSTORE_2;
894
895    /**
896     * Java VM opcode.
897     *
898     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
899     *      Java Virtual Machine Specification</a>
900     */
901    short FSTORE_3 = Const.FSTORE_3;
902
903    /**
904     * Java VM opcode.
905     *
906     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
907     *      Java Virtual Machine Specification</a>
908     */
909    short DSTORE_0 = Const.DSTORE_0;
910
911    /**
912     * Java VM opcode.
913     *
914     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
915     *      Java Virtual Machine Specification</a>
916     */
917    short DSTORE_1 = Const.DSTORE_1;
918
919    /**
920     * Java VM opcode.
921     *
922     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
923     *      Java Virtual Machine Specification</a>
924     */
925    short DSTORE_2 = Const.DSTORE_2;
926
927    /**
928     * Java VM opcode.
929     *
930     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
931     *      Java Virtual Machine Specification</a>
932     */
933    short DSTORE_3 = Const.DSTORE_3;
934
935    /**
936     * Java VM opcode.
937     *
938     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
939     *      Java Virtual Machine Specification</a>
940     */
941    short ASTORE_0 = Const.ASTORE_0;
942
943    /**
944     * Java VM opcode.
945     *
946     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
947     *      Java Virtual Machine Specification</a>
948     */
949    short ASTORE_1 = Const.ASTORE_1;
950
951    /**
952     * Java VM opcode.
953     *
954     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
955     *      Java Virtual Machine Specification</a>
956     */
957    short ASTORE_2 = Const.ASTORE_2;
958
959    /**
960     * Java VM opcode.
961     *
962     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
963     *      Java Virtual Machine Specification</a>
964     */
965    short ASTORE_3 = Const.ASTORE_3;
966
967    /**
968     * Java VM opcode.
969     *
970     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
971     *      Java Virtual Machine Specification</a>
972     */
973    short IASTORE = Const.IASTORE;
974
975    /**
976     * Java VM opcode.
977     *
978     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
979     *      Java Virtual Machine Specification</a>
980     */
981    short LASTORE = Const.LASTORE;
982
983    /**
984     * Java VM opcode.
985     *
986     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
987     *      Java Virtual Machine Specification</a>
988     */
989    short FASTORE = Const.FASTORE;
990
991    /**
992     * Java VM opcode.
993     *
994     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
995     *      Java Virtual Machine Specification</a>
996     */
997    short DASTORE = Const.DASTORE;
998
999    /**
1000     * Java VM opcode.
1001     *
1002     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1003     *      Java Virtual Machine Specification</a>
1004     */
1005    short AASTORE = Const.AASTORE;
1006
1007    /**
1008     * Java VM opcode.
1009     *
1010     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1011     *      Java Virtual Machine Specification</a>
1012     */
1013    short BASTORE = Const.BASTORE;
1014
1015    /**
1016     * Java VM opcode.
1017     *
1018     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1019     *      Java Virtual Machine Specification</a>
1020     */
1021    short CASTORE = Const.CASTORE;
1022
1023    /**
1024     * Java VM opcode.
1025     *
1026     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1027     *      Java Virtual Machine Specification</a>
1028     */
1029    short SASTORE = Const.SASTORE;
1030
1031    /**
1032     * Java VM opcode.
1033     *
1034     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1035     *      Java Virtual Machine Specification</a>
1036     */
1037    short POP = Const.POP;
1038
1039    /**
1040     * Java VM opcode.
1041     *
1042     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1043     *      Java Virtual Machine Specification</a>
1044     */
1045    short POP2 = Const.POP2;
1046
1047    /**
1048     * Java VM opcode.
1049     *
1050     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1051     *      Java Virtual Machine Specification</a>
1052     */
1053    short DUP = Const.DUP;
1054
1055    /**
1056     * Java VM opcode.
1057     *
1058     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1059     *      Java Virtual Machine Specification</a>
1060     */
1061    short DUP_X1 = Const.DUP_X1;
1062
1063    /**
1064     * Java VM opcode.
1065     *
1066     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1067     *      Java Virtual Machine Specification</a>
1068     */
1069    short DUP_X2 = Const.DUP_X2;
1070
1071    /**
1072     * Java VM opcode.
1073     *
1074     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1075     *      Java Virtual Machine Specification</a>
1076     */
1077    short DUP2 = Const.DUP2;
1078
1079    /**
1080     * Java VM opcode.
1081     *
1082     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1083     *      Java Virtual Machine Specification</a>
1084     */
1085    short DUP2_X1 = Const.DUP2_X1;
1086
1087    /**
1088     * Java VM opcode.
1089     *
1090     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1091     *      Java Virtual Machine Specification</a>
1092     */
1093    short DUP2_X2 = Const.DUP2_X2;
1094
1095    /**
1096     * Java VM opcode.
1097     *
1098     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1099     *      Java Virtual Machine Specification</a>
1100     */
1101    short SWAP = Const.SWAP;
1102
1103    /**
1104     * Java VM opcode.
1105     *
1106     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1107     *      Java Virtual Machine Specification</a>
1108     */
1109    short IADD = Const.IADD;
1110
1111    /**
1112     * Java VM opcode.
1113     *
1114     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1115     *      Java Virtual Machine Specification</a>
1116     */
1117    short LADD = Const.LADD;
1118
1119    /**
1120     * Java VM opcode.
1121     *
1122     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1123     *      Java Virtual Machine Specification</a>
1124     */
1125    short FADD = Const.FADD;
1126
1127    /**
1128     * Java VM opcode.
1129     *
1130     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1131     *      Java Virtual Machine Specification</a>
1132     */
1133    short DADD = Const.DADD;
1134
1135    /**
1136     * Java VM opcode.
1137     *
1138     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1139     *      Java Virtual Machine Specification</a>
1140     */
1141    short ISUB = Const.ISUB;
1142
1143    /**
1144     * Java VM opcode.
1145     *
1146     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1147     *      Java Virtual Machine Specification</a>
1148     */
1149    short LSUB = Const.LSUB;
1150
1151    /**
1152     * Java VM opcode.
1153     *
1154     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1155     *      Java Virtual Machine Specification</a>
1156     */
1157    short FSUB = Const.FSUB;
1158
1159    /**
1160     * Java VM opcode.
1161     *
1162     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1163     *      Java Virtual Machine Specification</a>
1164     */
1165    short DSUB = Const.DSUB;
1166
1167    /**
1168     * Java VM opcode.
1169     *
1170     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1171     *      Java Virtual Machine Specification</a>
1172     */
1173    short IMUL = Const.IMUL;
1174
1175    /**
1176     * Java VM opcode.
1177     *
1178     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1179     *      Java Virtual Machine Specification</a>
1180     */
1181    short LMUL = Const.LMUL;
1182
1183    /**
1184     * Java VM opcode.
1185     *
1186     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1187     *      Java Virtual Machine Specification</a>
1188     */
1189    short FMUL = Const.FMUL;
1190
1191    /**
1192     * Java VM opcode.
1193     *
1194     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1195     *      Java Virtual Machine Specification</a>
1196     */
1197    short DMUL = Const.DMUL;
1198
1199    /**
1200     * Java VM opcode.
1201     *
1202     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1203     *      Java Virtual Machine Specification</a>
1204     */
1205    short IDIV = Const.IDIV;
1206
1207    /**
1208     * Java VM opcode.
1209     *
1210     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1211     *      Java Virtual Machine Specification</a>
1212     */
1213    short LDIV = Const.LDIV;
1214
1215    /**
1216     * Java VM opcode.
1217     *
1218     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1219     *      Java Virtual Machine Specification</a>
1220     */
1221    short FDIV = Const.FDIV;
1222
1223    /**
1224     * Java VM opcode.
1225     *
1226     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1227     *      Java Virtual Machine Specification</a>
1228     */
1229    short DDIV = Const.DDIV;
1230
1231    /**
1232     * Java VM opcode.
1233     *
1234     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1235     *      Java Virtual Machine Specification</a>
1236     */
1237    short IREM = Const.IREM;
1238
1239    /**
1240     * Java VM opcode.
1241     *
1242     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1243     *      Java Virtual Machine Specification</a>
1244     */
1245    short LREM = Const.LREM;
1246
1247    /**
1248     * Java VM opcode.
1249     *
1250     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1251     *      Java Virtual Machine Specification</a>
1252     */
1253    short FREM = Const.FREM;
1254
1255    /**
1256     * Java VM opcode.
1257     *
1258     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1259     *      Java Virtual Machine Specification</a>
1260     */
1261    short DREM = Const.DREM;
1262
1263    /**
1264     * Java VM opcode.
1265     *
1266     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1267     *      Java Virtual Machine Specification</a>
1268     */
1269    short INEG = Const.INEG;
1270
1271    /**
1272     * Java VM opcode.
1273     *
1274     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1275     *      Java Virtual Machine Specification</a>
1276     */
1277    short LNEG = Const.LNEG;
1278
1279    /**
1280     * Java VM opcode.
1281     *
1282     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1283     *      Java Virtual Machine Specification</a>
1284     */
1285    short FNEG = Const.FNEG;
1286
1287    /**
1288     * Java VM opcode.
1289     *
1290     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1291     *      Java Virtual Machine Specification</a>
1292     */
1293    short DNEG = Const.DNEG;
1294
1295    /**
1296     * Java VM opcode.
1297     *
1298     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1299     *      Java Virtual Machine Specification</a>
1300     */
1301    short ISHL = Const.ISHL;
1302
1303    /**
1304     * Java VM opcode.
1305     *
1306     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1307     *      Java Virtual Machine Specification</a>
1308     */
1309    short LSHL = Const.LSHL;
1310
1311    /**
1312     * Java VM opcode.
1313     *
1314     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1315     *      Java Virtual Machine Specification</a>
1316     */
1317    short ISHR = Const.ISHR;
1318
1319    /**
1320     * Java VM opcode.
1321     *
1322     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1323     *      Java Virtual Machine Specification</a>
1324     */
1325    short LSHR = Const.LSHR;
1326
1327    /**
1328     * Java VM opcode.
1329     *
1330     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1331     *      Java Virtual Machine Specification</a>
1332     */
1333    short IUSHR = Const.IUSHR;
1334
1335    /**
1336     * Java VM opcode.
1337     *
1338     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1339     *      Java Virtual Machine Specification</a>
1340     */
1341    short LUSHR = Const.LUSHR;
1342
1343    /**
1344     * Java VM opcode.
1345     *
1346     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1347     *      Java Virtual Machine Specification</a>
1348     */
1349    short IAND = Const.IAND;
1350
1351    /**
1352     * Java VM opcode.
1353     *
1354     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1355     *      Java Virtual Machine Specification</a>
1356     */
1357    short LAND = Const.LAND;
1358
1359    /**
1360     * Java VM opcode.
1361     *
1362     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1363     *      Java Virtual Machine Specification</a>
1364     */
1365    short IOR = Const.IOR;
1366
1367    /**
1368     * Java VM opcode.
1369     *
1370     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1371     *      Java Virtual Machine Specification</a>
1372     */
1373    short LOR = Const.LOR;
1374
1375    /**
1376     * Java VM opcode.
1377     *
1378     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1379     *      Java Virtual Machine Specification</a>
1380     */
1381    short IXOR = Const.IXOR;
1382
1383    /**
1384     * Java VM opcode.
1385     *
1386     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1387     *      Java Virtual Machine Specification</a>
1388     */
1389    short LXOR = Const.LXOR;
1390
1391    /**
1392     * Java VM opcode.
1393     *
1394     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1395     *      Java Virtual Machine Specification</a>
1396     */
1397    short IINC = Const.IINC;
1398
1399    /**
1400     * Java VM opcode.
1401     *
1402     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1403     *      Java Virtual Machine Specification</a>
1404     */
1405    short I2L = Const.I2L;
1406
1407    /**
1408     * Java VM opcode.
1409     *
1410     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1411     *      Java Virtual Machine Specification</a>
1412     */
1413    short I2F = Const.I2F;
1414
1415    /**
1416     * Java VM opcode.
1417     *
1418     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1419     *      Java Virtual Machine Specification</a>
1420     */
1421    short I2D = Const.I2D;
1422
1423    /**
1424     * Java VM opcode.
1425     *
1426     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1427     *      Java Virtual Machine Specification</a>
1428     */
1429    short L2I = Const.L2I;
1430
1431    /**
1432     * Java VM opcode.
1433     *
1434     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1435     *      Java Virtual Machine Specification</a>
1436     */
1437    short L2F = Const.L2F;
1438
1439    /**
1440     * Java VM opcode.
1441     *
1442     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1443     *      Java Virtual Machine Specification</a>
1444     */
1445    short L2D = Const.L2D;
1446
1447    /**
1448     * Java VM opcode.
1449     *
1450     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1451     *      Java Virtual Machine Specification</a>
1452     */
1453    short F2I = Const.F2I;
1454
1455    /**
1456     * Java VM opcode.
1457     *
1458     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1459     *      Java Virtual Machine Specification</a>
1460     */
1461    short F2L = Const.F2L;
1462
1463    /**
1464     * Java VM opcode.
1465     *
1466     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1467     *      Java Virtual Machine Specification</a>
1468     */
1469    short F2D = Const.F2D;
1470
1471    /**
1472     * Java VM opcode.
1473     *
1474     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1475     *      Java Virtual Machine Specification</a>
1476     */
1477    short D2I = Const.D2I;
1478
1479    /**
1480     * Java VM opcode.
1481     *
1482     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1483     *      Java Virtual Machine Specification</a>
1484     */
1485    short D2L = Const.D2L;
1486
1487    /**
1488     * Java VM opcode.
1489     *
1490     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1491     *      Java Virtual Machine Specification</a>
1492     */
1493    short D2F = Const.D2F;
1494
1495    /**
1496     * Java VM opcode.
1497     *
1498     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1499     *      Java Virtual Machine Specification</a>
1500     */
1501    short I2B = Const.I2B;
1502
1503    /**
1504     * Java VM opcode.
1505     *
1506     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1507     *      Java Virtual Machine Specification</a>
1508     */
1509    short INT2BYTE = Const.INT2BYTE; // Old notion
1510
1511    /**
1512     * Java VM opcode.
1513     *
1514     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1515     *      Java Virtual Machine Specification</a>
1516     */
1517    short I2C = Const.I2C;
1518
1519    /**
1520     * Java VM opcode.
1521     *
1522     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1523     *      Java Virtual Machine Specification</a>
1524     */
1525    short INT2CHAR = Const.INT2CHAR; // Old notion
1526
1527    /**
1528     * Java VM opcode.
1529     *
1530     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1531     *      Java Virtual Machine Specification</a>
1532     */
1533    short I2S = Const.I2S;
1534
1535    /**
1536     * Java VM opcode.
1537     *
1538     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1539     *      Java Virtual Machine Specification</a>
1540     */
1541    short INT2SHORT = Const.INT2SHORT; // Old notion
1542
1543    /**
1544     * Java VM opcode.
1545     *
1546     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1547     *      Java Virtual Machine Specification</a>
1548     */
1549    short LCMP = Const.LCMP;
1550
1551    /**
1552     * Java VM opcode.
1553     *
1554     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1555     *      Java Virtual Machine Specification</a>
1556     */
1557    short FCMPL = Const.FCMPL;
1558
1559    /**
1560     * Java VM opcode.
1561     *
1562     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1563     *      Java Virtual Machine Specification</a>
1564     */
1565    short FCMPG = Const.FCMPG;
1566
1567    /**
1568     * Java VM opcode.
1569     *
1570     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1571     *      Java Virtual Machine Specification</a>
1572     */
1573    short DCMPL = Const.DCMPL;
1574
1575    /**
1576     * Java VM opcode.
1577     *
1578     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1579     *      Java Virtual Machine Specification</a>
1580     */
1581    short DCMPG = Const.DCMPG;
1582
1583    /**
1584     * Java VM opcode.
1585     *
1586     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1587     *      Java Virtual Machine Specification</a>
1588     */
1589    short IFEQ = Const.IFEQ;
1590
1591    /**
1592     * Java VM opcode.
1593     *
1594     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1595     *      Java Virtual Machine Specification</a>
1596     */
1597    short IFNE = Const.IFNE;
1598
1599    /**
1600     * Java VM opcode.
1601     *
1602     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1603     *      Java Virtual Machine Specification</a>
1604     */
1605    short IFLT = Const.IFLT;
1606
1607    /**
1608     * Java VM opcode.
1609     *
1610     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1611     *      Java Virtual Machine Specification</a>
1612     */
1613    short IFGE = Const.IFGE;
1614
1615    /**
1616     * Java VM opcode.
1617     *
1618     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1619     *      Java Virtual Machine Specification</a>
1620     */
1621    short IFGT = Const.IFGT;
1622
1623    /**
1624     * Java VM opcode.
1625     *
1626     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1627     *      Java Virtual Machine Specification</a>
1628     */
1629    short IFLE = Const.IFLE;
1630
1631    /**
1632     * Java VM opcode.
1633     *
1634     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1635     *      Java Virtual Machine Specification</a>
1636     */
1637    short IF_ICMPEQ = Const.IF_ICMPEQ;
1638
1639    /**
1640     * Java VM opcode.
1641     *
1642     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1643     *      Java Virtual Machine Specification</a>
1644     */
1645    short IF_ICMPNE = Const.IF_ICMPNE;
1646
1647    /**
1648     * Java VM opcode.
1649     *
1650     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1651     *      Java Virtual Machine Specification</a>
1652     */
1653    short IF_ICMPLT = Const.IF_ICMPLT;
1654
1655    /**
1656     * Java VM opcode.
1657     *
1658     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1659     *      Java Virtual Machine Specification</a>
1660     */
1661    short IF_ICMPGE = Const.IF_ICMPGE;
1662
1663    /**
1664     * Java VM opcode.
1665     *
1666     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1667     *      Java Virtual Machine Specification</a>
1668     */
1669    short IF_ICMPGT = Const.IF_ICMPGT;
1670
1671    /**
1672     * Java VM opcode.
1673     *
1674     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1675     *      Java Virtual Machine Specification</a>
1676     */
1677    short IF_ICMPLE = Const.IF_ICMPLE;
1678
1679    /**
1680     * Java VM opcode.
1681     *
1682     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1683     *      Java Virtual Machine Specification</a>
1684     */
1685    short IF_ACMPEQ = Const.IF_ACMPEQ;
1686
1687    /**
1688     * Java VM opcode.
1689     *
1690     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1691     *      Java Virtual Machine Specification</a>
1692     */
1693    short IF_ACMPNE = Const.IF_ACMPNE;
1694
1695    /**
1696     * Java VM opcode.
1697     *
1698     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1699     *      Java Virtual Machine Specification</a>
1700     */
1701    short GOTO = Const.GOTO;
1702
1703    /**
1704     * Java VM opcode.
1705     *
1706     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1707     *      Java Virtual Machine Specification</a>
1708     */
1709    short JSR = Const.JSR;
1710
1711    /**
1712     * Java VM opcode.
1713     *
1714     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1715     *      Java Virtual Machine Specification</a>
1716     */
1717    short RET = Const.RET;
1718
1719    /**
1720     * Java VM opcode.
1721     *
1722     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1723     *      Java Virtual Machine Specification</a>
1724     */
1725    short TABLESWITCH = Const.TABLESWITCH;
1726
1727    /**
1728     * Java VM opcode.
1729     *
1730     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1731     *      Java Virtual Machine Specification</a>
1732     */
1733    short LOOKUPSWITCH = Const.LOOKUPSWITCH;
1734
1735    /**
1736     * Java VM opcode.
1737     *
1738     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1739     *      Java Virtual Machine Specification</a>
1740     */
1741    short IRETURN = Const.IRETURN;
1742
1743    /**
1744     * Java VM opcode.
1745     *
1746     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1747     *      Java Virtual Machine Specification</a>
1748     */
1749    short LRETURN = Const.LRETURN;
1750
1751    /**
1752     * Java VM opcode.
1753     *
1754     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1755     *      Java Virtual Machine Specification</a>
1756     */
1757    short FRETURN = Const.FRETURN;
1758
1759    /**
1760     * Java VM opcode.
1761     *
1762     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1763     *      Java Virtual Machine Specification</a>
1764     */
1765    short DRETURN = Const.DRETURN;
1766
1767    /**
1768     * Java VM opcode.
1769     *
1770     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1771     *      Java Virtual Machine Specification</a>
1772     */
1773    short ARETURN = Const.ARETURN;
1774
1775    /**
1776     * Java VM opcode.
1777     *
1778     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1779     *      Java Virtual Machine Specification</a>
1780     */
1781    short RETURN = Const.RETURN;
1782
1783    /**
1784     * Java VM opcode.
1785     *
1786     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1787     *      Java Virtual Machine Specification</a>
1788     */
1789    short GETSTATIC = Const.GETSTATIC;
1790
1791    /**
1792     * Java VM opcode.
1793     *
1794     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1795     *      Java Virtual Machine Specification</a>
1796     */
1797    short PUTSTATIC = Const.PUTSTATIC;
1798
1799    /**
1800     * Java VM opcode.
1801     *
1802     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1803     *      Java Virtual Machine Specification</a>
1804     */
1805    short GETFIELD = Const.GETFIELD;
1806
1807    /**
1808     * Java VM opcode.
1809     *
1810     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1811     *      Java Virtual Machine Specification</a>
1812     */
1813    short PUTFIELD = Const.PUTFIELD;
1814
1815    /**
1816     * Java VM opcode.
1817     *
1818     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1819     *      Java Virtual Machine Specification</a>
1820     */
1821    short INVOKEVIRTUAL = Const.INVOKEVIRTUAL;
1822
1823    /**
1824     * Java VM opcode.
1825     *
1826     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1827     *      Java Virtual Machine Specification</a>
1828     */
1829    short INVOKESPECIAL = Const.INVOKESPECIAL;
1830
1831    /**
1832     * Java VM opcode.
1833     *
1834     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1835     *      Java Virtual Machine Specification</a>
1836     */
1837    short INVOKENONVIRTUAL = Const.INVOKENONVIRTUAL; // Old name in JDK 1.0
1838
1839    /**
1840     * Java VM opcode.
1841     *
1842     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1843     *      Java Virtual Machine Specification</a>
1844     */
1845    short INVOKESTATIC = Const.INVOKESTATIC;
1846
1847    /**
1848     * Java VM opcode.
1849     *
1850     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1851     *      Java Virtual Machine Specification</a>
1852     */
1853    short INVOKEINTERFACE = Const.INVOKEINTERFACE;
1854
1855    /**
1856     * Java VM opcode.
1857     *
1858     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1859     *      Java Virtual Machine Specification</a>
1860     */
1861    short INVOKEDYNAMIC = Const.INVOKEDYNAMIC;
1862
1863    /**
1864     * Java VM opcode.
1865     *
1866     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1867     *      Java Virtual Machine Specification</a>
1868     */
1869    short NEW = Const.NEW;
1870
1871    /**
1872     * Java VM opcode.
1873     *
1874     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1875     *      Java Virtual Machine Specification</a>
1876     */
1877    short NEWARRAY = Const.NEWARRAY;
1878
1879    /**
1880     * Java VM opcode.
1881     *
1882     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1883     *      Java Virtual Machine Specification</a>
1884     */
1885    short ANEWARRAY = Const.ANEWARRAY;
1886
1887    /**
1888     * Java VM opcode.
1889     *
1890     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1891     *      Java Virtual Machine Specification</a>
1892     */
1893    short ARRAYLENGTH = Const.ARRAYLENGTH;
1894
1895    /**
1896     * Java VM opcode.
1897     *
1898     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1899     *      Java Virtual Machine Specification</a>
1900     */
1901    short ATHROW = Const.ATHROW;
1902
1903    /**
1904     * Java VM opcode.
1905     *
1906     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1907     *      Java Virtual Machine Specification</a>
1908     */
1909    short CHECKCAST = Const.CHECKCAST;
1910
1911    /**
1912     * Java VM opcode.
1913     *
1914     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1915     *      Java Virtual Machine Specification</a>
1916     */
1917    short INSTANCEOF = Const.INSTANCEOF;
1918
1919    /**
1920     * Java VM opcode.
1921     *
1922     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1923     *      Java Virtual Machine Specification</a>
1924     */
1925    short MONITORENTER = Const.MONITORENTER;
1926
1927    /**
1928     * Java VM opcode.
1929     *
1930     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1931     *      Java Virtual Machine Specification</a>
1932     */
1933    short MONITOREXIT = Const.MONITOREXIT;
1934
1935    /**
1936     * Java VM opcode.
1937     *
1938     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1939     *      Java Virtual Machine Specification</a>
1940     */
1941    short WIDE = Const.WIDE;
1942
1943    /**
1944     * Java VM opcode.
1945     *
1946     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1947     *      Java Virtual Machine Specification</a>
1948     */
1949    short MULTIANEWARRAY = Const.MULTIANEWARRAY;
1950
1951    /**
1952     * Java VM opcode.
1953     *
1954     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1955     *      Java Virtual Machine Specification</a>
1956     */
1957    short IFNULL = Const.IFNULL;
1958
1959    /**
1960     * Java VM opcode.
1961     *
1962     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1963     *      Java Virtual Machine Specification</a>
1964     */
1965    short IFNONNULL = Const.IFNONNULL;
1966
1967    /**
1968     * Java VM opcode.
1969     *
1970     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1971     *      Java Virtual Machine Specification</a>
1972     */
1973    short GOTO_W = Const.GOTO_W;
1974
1975    /**
1976     * Java VM opcode.
1977     *
1978     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5"> Opcode definitions in The
1979     *      Java Virtual Machine Specification</a>
1980     */
1981    short JSR_W = Const.JSR_W;
1982
1983    /**
1984     * JVM internal opcode.
1985     *
1986     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.2"> Reserved opcodes in the Java
1987     *      Virtual Machine Specification</a>
1988     */
1989    short BREAKPOINT = Const.BREAKPOINT;
1990
1991    /**
1992     * JVM internal opcode.
1993     *
1994     * @see <a href=
1995     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
1996     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
1997     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
1998     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
1999     */
2000    short LDC_QUICK = Const.LDC_QUICK;
2001
2002    /**
2003     * JVM internal opcode.
2004     *
2005     * @see <a href=
2006     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2007     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2008     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2009     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2010     */
2011    short LDC_W_QUICK = Const.LDC_W_QUICK;
2012
2013    /**
2014     * JVM internal opcode.
2015     *
2016     * @see <a href=
2017     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2018     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2019     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2020     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2021     */
2022    short LDC2_W_QUICK = Const.LDC2_W_QUICK;
2023
2024    /**
2025     * JVM internal opcode.
2026     *
2027     * @see <a href=
2028     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2029     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2030     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2031     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2032     */
2033    short GETFIELD_QUICK = Const.GETFIELD_QUICK;
2034
2035    /**
2036     * JVM internal opcode.
2037     *
2038     * @see <a href=
2039     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2040     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2041     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2042     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2043     */
2044    short PUTFIELD_QUICK = Const.PUTFIELD_QUICK;
2045
2046    /**
2047     * JVM internal opcode.
2048     *
2049     * @see <a href=
2050     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2051     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2052     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2053     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2054     */
2055    short GETFIELD2_QUICK = Const.GETFIELD2_QUICK;
2056
2057    /**
2058     * JVM internal opcode.
2059     *
2060     * @see <a href=
2061     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2062     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2063     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2064     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2065     */
2066    short PUTFIELD2_QUICK = Const.PUTFIELD2_QUICK;
2067
2068    /**
2069     * JVM internal opcode.
2070     *
2071     * @see <a href=
2072     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2073     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2074     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2075     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2076     */
2077    short GETSTATIC_QUICK = Const.GETSTATIC_QUICK;
2078
2079    /**
2080     * JVM internal opcode.
2081     *
2082     * @see <a href=
2083     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2084     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2085     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2086     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2087     */
2088    short PUTSTATIC_QUICK = Const.PUTSTATIC_QUICK;
2089
2090    /**
2091     * JVM internal opcode.
2092     *
2093     * @see <a href=
2094     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2095     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2096     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2097     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2098     */
2099    short GETSTATIC2_QUICK = Const.GETSTATIC2_QUICK;
2100
2101    /**
2102     * JVM internal opcode.
2103     *
2104     * @see <a href=
2105     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2106     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2107     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2108     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2109     */
2110    short PUTSTATIC2_QUICK = Const.PUTSTATIC2_QUICK;
2111
2112    /**
2113     * JVM internal opcode.
2114     *
2115     * @see <a href=
2116     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2117     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2118     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2119     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2120     */
2121    short INVOKEVIRTUAL_QUICK = Const.INVOKEVIRTUAL_QUICK;
2122
2123    /**
2124     * JVM internal opcode.
2125     *
2126     * @see <a href=
2127     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2128     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2129     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2130     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2131     */
2132    short INVOKENONVIRTUAL_QUICK = Const.INVOKENONVIRTUAL_QUICK;
2133
2134    /**
2135     * JVM internal opcode.
2136     *
2137     * @see <a href=
2138     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2139     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2140     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2141     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2142     */
2143    short INVOKESUPER_QUICK = Const.INVOKESUPER_QUICK;
2144
2145    /**
2146     * JVM internal opcode.
2147     *
2148     * @see <a href=
2149     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2150     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2151     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2152     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2153     */
2154    short INVOKESTATIC_QUICK = Const.INVOKESTATIC_QUICK;
2155
2156    /**
2157     * JVM internal opcode.
2158     *
2159     * @see <a href=
2160     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2161     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2162     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2163     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2164     */
2165    short INVOKEINTERFACE_QUICK = Const.INVOKEINTERFACE_QUICK;
2166
2167    /**
2168     * JVM internal opcode.
2169     *
2170     * @see <a href=
2171     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2172     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2173     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2174     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2175     */
2176    short INVOKEVIRTUALOBJECT_QUICK = Const.INVOKEVIRTUALOBJECT_QUICK;
2177
2178    /**
2179     * JVM internal opcode.
2180     *
2181     * @see <a href=
2182     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2183     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2184     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2185     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2186     */
2187    short NEW_QUICK = Const.NEW_QUICK;
2188
2189    /**
2190     * JVM internal opcode.
2191     *
2192     * @see <a href=
2193     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2194     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2195     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2196     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2197     */
2198    short ANEWARRAY_QUICK = Const.ANEWARRAY_QUICK;
2199
2200    /**
2201     * JVM internal opcode.
2202     *
2203     * @see <a href=
2204     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2205     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2206     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2207     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2208     */
2209    short MULTIANEWARRAY_QUICK = Const.MULTIANEWARRAY_QUICK;
2210
2211    /**
2212     * JVM internal opcode.
2213     *
2214     * @see <a href=
2215     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2216     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2217     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2218     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2219     */
2220    short CHECKCAST_QUICK = Const.CHECKCAST_QUICK;
2221
2222    /**
2223     * JVM internal opcode.
2224     *
2225     * @see <a href=
2226     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2227     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2228     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2229     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2230     */
2231    short INSTANCEOF_QUICK = Const.INSTANCEOF_QUICK;
2232
2233    /**
2234     * JVM internal opcode.
2235     *
2236     * @see <a href=
2237     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2238     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2239     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2240     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2241     */
2242    short INVOKEVIRTUAL_QUICK_W = Const.INVOKEVIRTUAL_QUICK_W;
2243
2244    /**
2245     * JVM internal opcode.
2246     *
2247     * @see <a href=
2248     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2249     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2250     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2251     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2252     */
2253    short GETFIELD_QUICK_W = Const.GETFIELD_QUICK_W;
2254
2255    /**
2256     * JVM internal opcode.
2257     *
2258     * @see <a href=
2259     *      "https://web.archive.org/web/20120108031230/http://java.sun.com/docs/books/jvms/first_edition/html/Quick.doc.html">
2260     *      Specification of _quick opcodes in the Java Virtual Machine Specification (version 1)</a>
2261     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se5.0/html/ChangesAppendix.doc.html#448885"> Why the _quick
2262     *      opcodes were removed from the second version of the Java Virtual Machine Specification.</a>
2263     */
2264    short PUTFIELD_QUICK_W = Const.PUTFIELD_QUICK_W;
2265
2266    /**
2267     * JVM internal opcode.
2268     *
2269     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.2"> Reserved opcodes in the Java
2270     *      Virtual Machine Specification</a>
2271     */
2272    short IMPDEP1 = Const.IMPDEP1;
2273
2274    /**
2275     * JVM internal opcode.
2276     *
2277     * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.2"> Reserved opcodes in the Java
2278     *      Virtual Machine Specification</a>
2279     */
2280    short IMPDEP2 = Const.IMPDEP2;
2281
2282    /**
2283     * BCEL virtual instruction for pushing an arbitrary data type onto the stack. Will be converted to the appropriate JVM
2284     * opcode when the class is dumped.
2285     */
2286    short PUSH = Const.PUSH;
2287
2288    /**
2289     * BCEL virtual instruction for either LOOKUPSWITCH or TABLESWITCH. Will be converted to the appropriate JVM opcode when
2290     * the class is dumped.
2291     */
2292    short SWITCH = Const.SWITCH;
2293
2294    /** Illegal opcode. */
2295    short UNDEFINED = Const.UNDEFINED;
2296
2297    /** Illegal opcode. */
2298    short UNPREDICTABLE = Const.UNPREDICTABLE;
2299
2300    /** Illegal opcode. */
2301    short RESERVED = Const.RESERVED;
2302
2303    /** Mnemonic for an illegal opcode. */
2304    String ILLEGAL_OPCODE = Const.ILLEGAL_OPCODE;
2305
2306    /** Mnemonic for an illegal type. */
2307    String ILLEGAL_TYPE = Const.ILLEGAL_TYPE;
2308
2309    /** Boolean data type. */
2310    byte T_BOOLEAN = Const.T_BOOLEAN;
2311
2312    /** Char data type. */
2313    byte T_CHAR = Const.T_CHAR;
2314
2315    /** Float data type. */
2316    byte T_FLOAT = Const.T_FLOAT;
2317
2318    /** Double data type. */
2319    byte T_DOUBLE = Const.T_DOUBLE;
2320
2321    /** Byte data type. */
2322    byte T_BYTE = Const.T_BYTE;
2323
2324    /** Short data type. */
2325    byte T_SHORT = Const.T_SHORT;
2326
2327    /** Int data type. */
2328    byte T_INT = Const.T_INT;
2329
2330    /** Long data type. */
2331    byte T_LONG = Const.T_LONG;
2332
2333    /** Void data type (non-standard). */
2334    byte T_VOID = Const.T_VOID; // Non-standard
2335
2336    /** Array data type. */
2337    byte T_ARRAY = Const.T_ARRAY;
2338
2339    /** Object data type. */
2340    byte T_OBJECT = Const.T_OBJECT;
2341
2342    /** Reference data type (deprecated). */
2343    byte T_REFERENCE = Const.T_REFERENCE; // Deprecated
2344
2345    /** Unknown data type. */
2346    byte T_UNKNOWN = Const.T_UNKNOWN;
2347
2348    /** Address data type. */
2349    byte T_ADDRESS = Const.T_ADDRESS;
2350
2351    /**
2352     * The primitive type names corresponding to the T_XX constants, for example, TYPE_NAMES[T_INT] = "int"
2353     */
2354    String[] TYPE_NAMES = {ILLEGAL_TYPE, ILLEGAL_TYPE, ILLEGAL_TYPE, ILLEGAL_TYPE, "boolean", "char", "float", "double", "byte", "short", "int", "long", "void",
2355        "array", "object", "unknown", "address"};
2356
2357    /**
2358     * The primitive class names corresponding to the T_XX constants, for example, CLASS_TYPE_NAMES[T_INT] = "java.lang.Integer"
2359     */
2360    String[] CLASS_TYPE_NAMES = {ILLEGAL_TYPE, ILLEGAL_TYPE, ILLEGAL_TYPE, ILLEGAL_TYPE, "java.lang.Boolean", "java.lang.Character", "java.lang.Float",
2361        "java.lang.Double", "java.lang.Byte", "java.lang.Short", "java.lang.Integer", "java.lang.Long", "java.lang.Void", ILLEGAL_TYPE, ILLEGAL_TYPE,
2362        ILLEGAL_TYPE, ILLEGAL_TYPE};
2363
2364    /**
2365     * The signature characters corresponding to primitive types, for example, SHORT_TYPE_NAMES[T_INT] = "I"
2366     */
2367    String[] SHORT_TYPE_NAMES = {ILLEGAL_TYPE, ILLEGAL_TYPE, ILLEGAL_TYPE, ILLEGAL_TYPE, "Z", "C", "F", "D", "B", "S", "I", "J", "V", ILLEGAL_TYPE,
2368        ILLEGAL_TYPE, ILLEGAL_TYPE};
2369
2370    /**
2371     * Number of byte code operands for each opcode, that is, number of bytes after the tag byte itself. Indexed by opcode, so
2372     * NO_OF_OPERANDS[BIPUSH] = the number of operands for a bipush instruction.
2373     */
2374    short[] NO_OF_OPERANDS = Const.NO_OF_OPERANDS;
2375
2376    /**
2377     * How the byte code operands are to be interpreted for each opcode. Indexed by opcode. TYPE_OF_OPERANDS[ILOAD] = an
2378     * array of shorts describing the data types for the instruction.
2379     */
2380    short[][] TYPE_OF_OPERANDS = Const.TYPE_OF_OPERANDS;
2381
2382    /**
2383     * Names of opcodes. Indexed by opcode. OPCODE_NAMES[ALOAD] = "aload".
2384     */
2385    String[] OPCODE_NAMES = Const.OPCODE_NAMES;
2386
2387    /**
2388     * Number of words consumed on operand stack by instructions. Indexed by opcode. CONSUME_STACK[FALOAD] = number of words
2389     * consumed from the stack by a faload instruction.
2390     */
2391    int[] CONSUME_STACK = Const.CONSUME_STACK;
2392
2393    /**
2394     * Number of words produced onto operand stack by instructions. Indexed by opcode. CONSUME_STACK[DALOAD] = number of
2395     * words consumed from the stack by a daload instruction.
2396     */
2397    int[] PRODUCE_STACK = Const.PRODUCE_STACK;
2398
2399    /**
2400     * Attributes and their corresponding names.
2401     */
2402
2403    /** Attribute constant: Unknown. */
2404    byte ATTR_UNKNOWN = Const.ATTR_UNKNOWN;
2405
2406    /** Attribute constant: SourceFile. */
2407    byte ATTR_SOURCE_FILE = Const.ATTR_SOURCE_FILE;
2408
2409    /** Attribute constant: ConstantValue. */
2410    byte ATTR_CONSTANT_VALUE = Const.ATTR_CONSTANT_VALUE;
2411
2412    /** Attribute constant: Code. */
2413    byte ATTR_CODE = Const.ATTR_CODE;
2414
2415    /** Attribute constant: Exceptions. */
2416    byte ATTR_EXCEPTIONS = Const.ATTR_EXCEPTIONS;
2417
2418    /** Attribute constant: LineNumberTable. */
2419    byte ATTR_LINE_NUMBER_TABLE = Const.ATTR_LINE_NUMBER_TABLE;
2420
2421    /** Attribute constant: LocalVariableTable. */
2422    byte ATTR_LOCAL_VARIABLE_TABLE = Const.ATTR_LOCAL_VARIABLE_TABLE;
2423
2424    /** Attribute constant: InnerClasses. */
2425    byte ATTR_INNER_CLASSES = Const.ATTR_INNER_CLASSES;
2426
2427    /** Attribute constant: Synthetic. */
2428    byte ATTR_SYNTHETIC = Const.ATTR_SYNTHETIC;
2429
2430    /** Attribute constant: Deprecated. */
2431    byte ATTR_DEPRECATED = Const.ATTR_DEPRECATED;
2432
2433    /** Attribute constant: PMG. */
2434    byte ATTR_PMG = Const.ATTR_PMG;
2435
2436    /** Attribute constant: Signature. */
2437    byte ATTR_SIGNATURE = Const.ATTR_SIGNATURE;
2438
2439    /** Attribute constant: StackMap. */
2440    byte ATTR_STACK_MAP = Const.ATTR_STACK_MAP;
2441
2442    /** Attribute constant for runtime visible annotations. */
2443    byte ATTR_RUNTIMEVISIBLE_ANNOTATIONS = 12;
2444
2445    /** Attribute constant for runtime invisible annotations. */
2446    byte ATTR_RUNTIMEINVISIBLE_ANNOTATIONS = 13;
2447
2448    /** Attribute constant for runtime visible parameter annotations. */
2449    byte ATTR_RUNTIMEVISIBLE_PARAMETER_ANNOTATIONS = 14;
2450
2451    /** Attribute constant for runtime invisible parameter annotations. */
2452    byte ATTR_RUNTIMEINVISIBLE_PARAMETER_ANNOTATIONS = 15;
2453
2454    /** Attribute constant for annotation default. */
2455    byte ATTR_ANNOTATION_DEFAULT = 16;
2456
2457    /** Count of known attributes. */
2458    short KNOWN_ATTRIBUTES = 12; // should be 17
2459
2460    // TODO: mutable public array!!
2461
2462    /** Array of attribute names. */
2463    String[] ATTRIBUTE_NAMES = {"SourceFile", "ConstantValue", "Code", "Exceptions", "LineNumberTable", "LocalVariableTable", "InnerClasses", "Synthetic",
2464        "Deprecated", "PMGClass", "Signature", "StackMap", "RuntimeVisibleAnnotations", "RuntimeInvisibleAnnotations", "RuntimeVisibleParameterAnnotations",
2465        "RuntimeInvisibleParameterAnnotations", "AnnotationDefault"};
2466
2467    /**
2468     * Constants used in the StackMap attribute.
2469     */
2470
2471    /** Item type: Bogus. */
2472    byte ITEM_Bogus = Const.ITEM_Bogus;
2473
2474    /** Item type: Integer. */
2475    byte ITEM_Integer = Const.ITEM_Integer;
2476
2477    /** Item type: Float. */
2478    byte ITEM_Float = Const.ITEM_Float;
2479
2480    /** Item type: Double. */
2481    byte ITEM_Double = Const.ITEM_Double;
2482
2483    /** Item type: Long. */
2484    byte ITEM_Long = Const.ITEM_Long;
2485
2486    /** Item type: Null. */
2487    byte ITEM_Null = Const.ITEM_Null;
2488
2489    /** Item type: InitObject. */
2490    byte ITEM_InitObject = Const.ITEM_InitObject;
2491
2492    /** Item type: Object. */
2493    byte ITEM_Object = Const.ITEM_Object;
2494
2495    /** Item type: NewObject. */
2496    byte ITEM_NewObject = Const.ITEM_NewObject;
2497
2498    /** Array of item type names. */
2499    String[] ITEM_NAMES = {"Bogus", "Integer", "Float", "Double", "Long", "Null", "InitObject", "Object", "NewObject"};
2500
2501}