Main Page   Packages   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

Constants.java

00001 package de.fub.bytecode;
00002 
00003 /**
00004  * Constants for the project, mostly defined in the JVM specification.
00005  *
00006  * @version $Id: Constants.java,v 1.1.1.1 2002/01/24 03:43:59 pserver Exp $
00007  * @author  <A HREF="http://www.inf.fu-berlin.de/~dahm">M. Dahm</A>
00008  */
00009 public interface Constants {
00010   /** Major and minor version of the code.
00011    */
00012   public final static short MAJOR_1_1 = 45;
00013   public final static short MINOR_1_1 = 3;
00014   public final static short MAJOR_1_2 = 46;
00015   public final static short MINOR_1_2 = 0;
00016   public final static short MAJOR     = MAJOR_1_1;
00017   public final static short MINOR     = MINOR_1_1;
00018 
00019   /** Maximum value for an unsigned short.
00020    */
00021   public final static int MAX_SHORT = 65535; // 2^16 - 1
00022 
00023   /** Maximum value for an unsigned byte.
00024    */
00025   public final static int MAX_BYTE  = 255; // 2^8 - 1
00026 
00027   /** Access flags for classes, fields and methods.
00028    */
00029   public final static short ACC_PUBLIC       = 0x0001;
00030   public final static short ACC_PRIVATE      = 0x0002;
00031   public final static short ACC_PROTECTED    = 0x0004;
00032   public final static short ACC_STATIC       = 0x0008;
00033 
00034   public final static short ACC_FINAL        = 0x0010;
00035   public final static short ACC_SYNCHRONIZED = 0x0020;
00036   public final static short ACC_VOLATILE     = 0x0040;
00037   public final static short ACC_TRANSIENT    = 0x0080;
00038 
00039   public final static short ACC_NATIVE       = 0x0100;
00040   public final static short ACC_INTERFACE    = 0x0200;
00041   public final static short ACC_ABSTRACT     = 0x0400;
00042 
00043   // Applies to classes compiled by new compilers only
00044   public final static short ACC_SUPER        = 0x0020;
00045 
00046   public final static short MAX_ACC_FLAG     = ACC_ABSTRACT;
00047 
00048   public final static String[] ACCESS_NAMES = {
00049     "public", "private", "protected", "static", "final", "synchronized",
00050     "volatile", "transient", "native", "interface", "abstract"
00051   };
00052 
00053   /** Tags in constant pool to denote type of constant.
00054    */
00055   public final static byte CONSTANT_Utf8               = 1;
00056   public final static byte CONSTANT_Integer            = 3;
00057   public final static byte CONSTANT_Float              = 4;
00058   public final static byte CONSTANT_Long               = 5;
00059   public final static byte CONSTANT_Double             = 6;
00060   public final static byte CONSTANT_Class              = 7;
00061   public final static byte CONSTANT_Fieldref           = 9;
00062   public final static byte CONSTANT_String             = 8;
00063   public final static byte CONSTANT_Methodref          = 10;
00064   public final static byte CONSTANT_InterfaceMethodref = 11;
00065   public final static byte CONSTANT_NameAndType        = 12;
00066 
00067   public final static String[] CONSTANT_NAMES = {
00068     "", "CONSTANT_Utf8", "", "CONSTANT_Integer",
00069     "CONSTANT_Float", "CONSTANT_Long", "CONSTANT_Double",
00070     "CONSTANT_Class", "CONSTANT_String", "CONSTANT_Fieldref",
00071     "CONSTANT_Methodref", "CONSTANT_InterfaceMethodref",
00072     "CONSTANT_NameAndType" };
00073 
00074   /** Java VM opcodes.
00075    */
00076   public static final short NOP              = 0;
00077   public static final short ACONST_NULL      = 1;
00078   public static final short ICONST_M1        = 2;
00079   public static final short ICONST_0         = 3;
00080   public static final short ICONST_1         = 4;
00081   public static final short ICONST_2         = 5;
00082   public static final short ICONST_3         = 6;
00083   public static final short ICONST_4         = 7;
00084   public static final short ICONST_5         = 8;
00085   public static final short LCONST_0         = 9;
00086   public static final short LCONST_1         = 10;
00087   public static final short FCONST_0         = 11;
00088   public static final short FCONST_1         = 12;
00089   public static final short FCONST_2         = 13;
00090   public static final short DCONST_0         = 14;
00091   public static final short DCONST_1         = 15;
00092   public static final short BIPUSH           = 16;
00093   public static final short SIPUSH           = 17;
00094   public static final short LDC              = 18;
00095   public static final short LDC_W            = 19;
00096   public static final short LDC2_W           = 20;
00097   public static final short ILOAD            = 21;
00098   public static final short LLOAD            = 22;
00099   public static final short FLOAD            = 23;
00100   public static final short DLOAD            = 24;
00101   public static final short ALOAD            = 25;
00102   public static final short ILOAD_0          = 26;
00103   public static final short ILOAD_1          = 27;
00104   public static final short ILOAD_2          = 28;
00105   public static final short ILOAD_3          = 29;
00106   public static final short LLOAD_0          = 30;
00107   public static final short LLOAD_1          = 31;
00108   public static final short LLOAD_2          = 32;
00109   public static final short LLOAD_3          = 33;
00110   public static final short FLOAD_0          = 34;
00111   public static final short FLOAD_1          = 35;
00112   public static final short FLOAD_2          = 36;
00113   public static final short FLOAD_3          = 37;
00114   public static final short DLOAD_0          = 38;
00115   public static final short DLOAD_1          = 39;
00116   public static final short DLOAD_2          = 40;
00117   public static final short DLOAD_3          = 41;
00118   public static final short ALOAD_0          = 42;
00119   public static final short ALOAD_1          = 43;
00120   public static final short ALOAD_2          = 44;
00121   public static final short ALOAD_3          = 45;
00122   public static final short IALOAD           = 46;
00123   public static final short LALOAD           = 47;
00124   public static final short FALOAD           = 48;
00125   public static final short DALOAD           = 49;
00126   public static final short AALOAD           = 50;
00127   public static final short BALOAD           = 51;
00128   public static final short CALOAD           = 52;
00129   public static final short SALOAD           = 53;
00130   public static final short ISTORE           = 54;
00131   public static final short LSTORE           = 55;
00132   public static final short FSTORE           = 56;
00133   public static final short DSTORE           = 57;
00134   public static final short ASTORE           = 58;
00135   public static final short ISTORE_0         = 59;
00136   public static final short ISTORE_1         = 60;
00137   public static final short ISTORE_2         = 61;
00138   public static final short ISTORE_3         = 62;
00139   public static final short LSTORE_0         = 63;
00140   public static final short LSTORE_1         = 64;
00141   public static final short LSTORE_2         = 65;
00142   public static final short LSTORE_3         = 66;
00143   public static final short FSTORE_0         = 67;
00144   public static final short FSTORE_1         = 68;
00145   public static final short FSTORE_2         = 69;
00146   public static final short FSTORE_3         = 70;
00147   public static final short DSTORE_0         = 71;
00148   public static final short DSTORE_1         = 72;
00149   public static final short DSTORE_2         = 73;
00150   public static final short DSTORE_3         = 74;
00151   public static final short ASTORE_0         = 75;
00152   public static final short ASTORE_1         = 76;
00153   public static final short ASTORE_2         = 77;
00154   public static final short ASTORE_3         = 78;
00155   public static final short IASTORE          = 79;
00156   public static final short LASTORE          = 80;
00157   public static final short FASTORE          = 81;
00158   public static final short DASTORE          = 82;
00159   public static final short AASTORE          = 83;
00160   public static final short BASTORE          = 84;
00161   public static final short CASTORE          = 85;
00162   public static final short SASTORE          = 86;
00163   public static final short POP              = 87;
00164   public static final short POP2             = 88;
00165   public static final short DUP              = 89;
00166   public static final short DUP_X1           = 90;
00167   public static final short DUP_X2           = 91;
00168   public static final short DUP2             = 92;
00169   public static final short DUP2_X1          = 93;
00170   public static final short DUP2_X2          = 94;
00171   public static final short SWAP             = 95;
00172   public static final short IADD             = 96;
00173   public static final short LADD             = 97;
00174   public static final short FADD             = 98;
00175   public static final short DADD             = 99;
00176   public static final short ISUB             = 100;
00177   public static final short LSUB             = 101;
00178   public static final short FSUB             = 102;
00179   public static final short DSUB             = 103;
00180   public static final short IMUL             = 104;
00181   public static final short LMUL             = 105;
00182   public static final short FMUL             = 106;
00183   public static final short DMUL             = 107;
00184   public static final short IDIV             = 108;
00185   public static final short LDIV             = 109;
00186   public static final short FDIV             = 110;
00187   public static final short DDIV             = 111;
00188   public static final short IREM             = 112;
00189   public static final short LREM             = 113;
00190   public static final short FREM             = 114;
00191   public static final short DREM             = 115;
00192   public static final short INEG             = 116;
00193   public static final short LNEG             = 117;
00194   public static final short FNEG             = 118;
00195   public static final short DNEG             = 119;
00196   public static final short ISHL             = 120;
00197   public static final short LSHL             = 121;
00198   public static final short ISHR             = 122;
00199   public static final short LSHR             = 123;
00200   public static final short IUSHR            = 124;
00201   public static final short LUSHR            = 125;
00202   public static final short IAND             = 126;
00203   public static final short LAND             = 127;
00204   public static final short IOR              = 128;
00205   public static final short LOR              = 129;
00206   public static final short IXOR             = 130;
00207   public static final short LXOR             = 131;
00208   public static final short IINC             = 132;
00209   public static final short I2L              = 133;
00210   public static final short I2F              = 134;
00211   public static final short I2D              = 135;
00212   public static final short L2I              = 136;
00213   public static final short L2F              = 137;
00214   public static final short L2D              = 138;
00215   public static final short F2I              = 139;
00216   public static final short F2L              = 140;
00217   public static final short F2D              = 141;
00218   public static final short D2I              = 142;
00219   public static final short D2L              = 143;
00220   public static final short D2F              = 144;
00221   public static final short I2B              = 145;
00222   public static final short INT2BYTE         = 145; // Old notion
00223   public static final short I2C              = 146;
00224   public static final short INT2CHAR         = 146; // Old notion
00225   public static final short I2S              = 147;
00226   public static final short INT2SHORT        = 147; // Old notion
00227   public static final short LCMP             = 148;
00228   public static final short FCMPL            = 149;
00229   public static final short FCMPG            = 150;
00230   public static final short DCMPL            = 151;
00231   public static final short DCMPG            = 152;
00232   public static final short IFEQ             = 153;
00233   public static final short IFNE             = 154;
00234   public static final short IFLT             = 155;
00235   public static final short IFGE             = 156;
00236   public static final short IFGT             = 157;
00237   public static final short IFLE             = 158;
00238   public static final short IF_ICMPEQ        = 159;
00239   public static final short IF_ICMPNE        = 160;
00240   public static final short IF_ICMPLT        = 161;
00241   public static final short IF_ICMPGE        = 162;
00242   public static final short IF_ICMPGT        = 163;
00243   public static final short IF_ICMPLE        = 164;
00244   public static final short IF_ACMPEQ        = 165;
00245   public static final short IF_ACMPNE        = 166;
00246   public static final short GOTO             = 167;
00247   public static final short JSR              = 168;
00248   public static final short RET              = 169;
00249   public static final short TABLESWITCH      = 170;
00250   public static final short LOOKUPSWITCH     = 171;
00251   public static final short IRETURN          = 172;
00252   public static final short LRETURN          = 173;
00253   public static final short FRETURN          = 174;
00254   public static final short DRETURN          = 175;
00255   public static final short ARETURN          = 176;
00256   public static final short RETURN           = 177;
00257   public static final short GETSTATIC        = 178;
00258   public static final short PUTSTATIC        = 179;
00259   public static final short GETFIELD         = 180;
00260   public static final short PUTFIELD         = 181;
00261   public static final short INVOKEVIRTUAL    = 182;
00262   public static final short INVOKESPECIAL    = 183;
00263   public static final short INVOKENONVIRTUAL = 183; // Old name in JDK 1.0
00264   public static final short INVOKESTATIC     = 184;
00265   public static final short INVOKEINTERFACE  = 185;
00266   public static final short NEW              = 187;
00267   public static final short NEWARRAY         = 188;
00268   public static final short ANEWARRAY        = 189;
00269   public static final short ARRAYLENGTH      = 190;
00270   public static final short ATHROW           = 191;
00271   public static final short CHECKCAST        = 192;
00272   public static final short INSTANCEOF       = 193;
00273   public static final short MONITORENTER     = 194;
00274   public static final short MONITOREXIT      = 195;
00275   public static final short WIDE             = 196;
00276   public static final short MULTIANEWARRAY   = 197;
00277   public static final short IFNULL           = 198;
00278   public static final short IFNONNULL        = 199;
00279   public static final short GOTO_W           = 200;
00280   public static final short JSR_W            = 201;
00281   public static final short BREAKPOINT       = 202;
00282   public static final short IMPDEP1          = 254;
00283   public static final short IMPDEP2          = 255;
00284 
00285   /**
00286    * Non-legal opcodes, may be used by JVM internally.
00287    */
00288   public static final short LDC_QUICK                 = 203;
00289   public static final short LDC_W_QUICK               = 204;
00290   public static final short LDC2_W_QUICK              = 205;
00291   public static final short GETFIELD_QUICK            = 206;
00292   public static final short PUTFIELD_QUICK            = 207;
00293   public static final short GETFIELD2_QUICK           = 208;
00294   public static final short PUTFIELD2_QUICK           = 209;
00295   public static final short GETSTATIC_QUICK           = 210;
00296   public static final short PUTSTATIC_QUICK           = 211;
00297   public static final short GETSTATIC2_QUICK          = 212;
00298   public static final short PUTSTATIC2_QUICK          = 213;
00299   public static final short INVOKEVIRTUAL_QUICK       = 214;
00300   public static final short INVOKENONVIRTUAL_QUICK    = 215;
00301   public static final short INVOKESUPER_QUICK         = 216;
00302   public static final short INVOKESTATIC_QUICK        = 217;
00303   public static final short INVOKEINTERFACE_QUICK     = 218;
00304   public static final short INVOKEVIRTUALOBJECT_QUICK = 219;
00305   public static final short NEW_QUICK                 = 221;
00306   public static final short ANEWARRAY_QUICK           = 222;
00307   public static final short MULTIANEWARRAY_QUICK      = 223;
00308   public static final short CHECKCAST_QUICK           = 224;
00309   public static final short INSTANCEOF_QUICK          = 225;
00310   public static final short INVOKEVIRTUAL_QUICK_W     = 226;
00311   public static final short GETFIELD_QUICK_W          = 227;
00312   public static final short PUTFIELD_QUICK_W          = 228;
00313 
00314   /**
00315    * For internal purposes only.
00316    */
00317   public static final short PUSH             = 4711;
00318   public static final short SWITCH           = 4712;
00319 
00320   /**
00321    * Illegal codes
00322    */
00323   public static final short  UNDEFINED      = -1;
00324   public static final short  UNPREDICTABLE  = -2;
00325   public static final short  RESERVED       = -3;
00326   public static final String ILLEGAL_OPCODE = "<illegal opcode>";
00327   public static final String ILLEGAL_TYPE   = "<illegal type>";
00328 
00329   public static final byte T_BOOLEAN = 4;
00330   public static final byte T_CHAR    = 5;
00331   public static final byte T_FLOAT   = 6;
00332   public static final byte T_DOUBLE  = 7;
00333   public static final byte T_BYTE    = 8;
00334   public static final byte T_SHORT   = 9;
00335   public static final byte T_INT     = 10;
00336   public static final byte T_LONG    = 11;
00337 
00338   public static final byte T_VOID      = 12; // Non-standard
00339   public static final byte T_ARRAY     = 13;
00340   public static final byte T_OBJECT    = 14;
00341   public static final byte T_REFERENCE = 14; // Deprecated
00342   public static final byte T_UNKNOWN   = 15;
00343 
00344   public static final String[] TYPE_NAMES = {
00345     ILLEGAL_TYPE, ILLEGAL_TYPE,  ILLEGAL_TYPE, ILLEGAL_TYPE,
00346     "boolean", "char", "float", "double", "byte", "short", "int", "long",
00347     "void", "array", "object", "unknown" // Non-standard
00348   };
00349 
00350   public static final String[] SHORT_TYPE_NAMES = {
00351     ILLEGAL_TYPE, ILLEGAL_TYPE,  ILLEGAL_TYPE, ILLEGAL_TYPE,
00352     "Z", "C", "F", "D", "B", "S", "I", "J",
00353     "V", ILLEGAL_TYPE, ILLEGAL_TYPE, ILLEGAL_TYPE
00354   };
00355 
00356   /**
00357    * Number of byte code operands, i.e. number of bytes after the tag byte
00358    * itself.
00359    */
00360   public static final short[] NO_OF_OPERANDS = {
00361     0/*nop*/, 0/*aconst_null*/, 0/*iconst_m1*/, 0/*iconst_0*/,
00362     0/*iconst_1*/, 0/*iconst_2*/, 0/*iconst_3*/, 0/*iconst_4*/,
00363     0/*iconst_5*/, 0/*lconst_0*/, 0/*lconst_1*/, 0/*fconst_0*/,
00364     0/*fconst_1*/, 0/*fconst_2*/, 0/*dconst_0*/, 0/*dconst_1*/,
00365     1/*bipush*/, 2/*sipush*/, 1/*ldc*/, 2/*ldc_w*/, 2/*ldc2_w*/,
00366     1/*iload*/, 1/*lload*/, 1/*fload*/, 1/*dload*/, 1/*aload*/,
00367     0/*iload_0*/, 0/*iload_1*/, 0/*iload_2*/, 0/*iload_3*/,
00368     0/*lload_0*/, 0/*lload_1*/, 0/*lload_2*/, 0/*lload_3*/,
00369     0/*fload_0*/, 0/*fload_1*/, 0/*fload_2*/, 0/*fload_3*/,
00370     0/*dload_0*/, 0/*dload_1*/, 0/*dload_2*/, 0/*dload_3*/,
00371     0/*aload_0*/, 0/*aload_1*/, 0/*aload_2*/, 0/*aload_3*/,
00372     0/*iaload*/, 0/*laload*/, 0/*faload*/, 0/*daload*/,
00373     0/*aaload*/, 0/*baload*/, 0/*caload*/, 0/*saload*/,
00374     1/*istore*/, 1/*lstore*/, 1/*fstore*/, 1/*dstore*/,
00375     1/*astore*/, 0/*istore_0*/, 0/*istore_1*/, 0/*istore_2*/,
00376     0/*istore_3*/, 0/*lstore_0*/, 0/*lstore_1*/, 0/*lstore_2*/,
00377     0/*lstore_3*/, 0/*fstore_0*/, 0/*fstore_1*/, 0/*fstore_2*/,
00378     0/*fstore_3*/, 0/*dstore_0*/, 0/*dstore_1*/, 0/*dstore_2*/,
00379     0/*dstore_3*/, 0/*astore_0*/, 0/*astore_1*/, 0/*astore_2*/,
00380     0/*astore_3*/, 0/*iastore*/, 0/*lastore*/, 0/*fastore*/,
00381     0/*dastore*/, 0/*aastore*/, 0/*bastore*/, 0/*castore*/,
00382     0/*sastore*/, 0/*pop*/, 0/*pop2*/, 0/*dup*/, 0/*dup_x1*/,
00383     0/*dup_x2*/, 0/*dup2*/, 0/*dup2_x1*/, 0/*dup2_x2*/, 0/*swap*/,
00384     0/*iadd*/, 0/*ladd*/, 0/*fadd*/, 0/*dadd*/, 0/*isub*/,
00385     0/*lsub*/, 0/*fsub*/, 0/*dsub*/, 0/*imul*/, 0/*lmul*/,
00386     0/*fmul*/, 0/*dmul*/, 0/*idiv*/, 0/*ldiv*/, 0/*fdiv*/,
00387     0/*ddiv*/, 0/*irem*/, 0/*lrem*/, 0/*frem*/, 0/*drem*/,
00388     0/*ineg*/, 0/*lneg*/, 0/*fneg*/, 0/*dneg*/, 0/*ishl*/,
00389     0/*lshl*/, 0/*ishr*/, 0/*lshr*/, 0/*iushr*/, 0/*lushr*/,
00390     0/*iand*/, 0/*land*/, 0/*ior*/, 0/*lor*/, 0/*ixor*/, 0/*lxor*/,
00391     2/*iinc*/, 0/*i2l*/, 0/*i2f*/, 0/*i2d*/, 0/*l2i*/, 0/*l2f*/,
00392     0/*l2d*/, 0/*f2i*/, 0/*f2l*/, 0/*f2d*/, 0/*d2i*/, 0/*d2l*/,
00393     0/*d2f*/, 0/*i2b*/, 0/*i2c*/, 0/*i2s*/, 0/*lcmp*/, 0/*fcmpl*/,
00394     0/*fcmpg*/, 0/*dcmpl*/, 0/*dcmpg*/, 2/*ifeq*/, 2/*ifne*/,
00395     2/*iflt*/, 2/*ifge*/, 2/*ifgt*/, 2/*ifle*/, 2/*if_icmpeq*/,
00396     2/*if_icmpne*/, 2/*if_icmplt*/, 2/*if_icmpge*/, 2/*if_icmpgt*/,
00397     2/*if_icmple*/, 2/*if_acmpeq*/, 2/*if_acmpne*/, 2/*goto*/,
00398     2/*jsr*/, 1/*ret*/, UNPREDICTABLE/*tableswitch*/, UNPREDICTABLE/*lookupswitch*/,
00399     0/*ireturn*/, 0/*lreturn*/, 0/*freturn*/,
00400     0/*dreturn*/, 0/*areturn*/, 0/*return*/,
00401     2/*getstatic*/, 2/*putstatic*/, 2/*getfield*/,
00402     2/*putfield*/, 2/*invokevirtual*/, 2/*invokespecial*/, 2/*invokestatic*/,
00403     4/*invokeinterface*/, UNDEFINED, 2/*new*/,
00404     1/*newarray*/, 2/*anewarray*/,
00405     0/*arraylength*/, 0/*athrow*/, 2/*checkcast*/,
00406     2/*instanceof*/, 0/*monitorenter*/,
00407     0/*monitorexit*/, UNPREDICTABLE/*wide*/, 3/*multianewarray*/,
00408     2/*ifnull*/, 2/*ifnonnull*/, 4/*goto_w*/,
00409     4/*jsr_w*/, 0/*breakpoint*/, UNDEFINED,
00410     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00411     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00412     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00413     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00414     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00415     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00416     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00417     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00418     UNDEFINED, UNDEFINED, RESERVED/*impdep1*/, RESERVED/*impdep2*/
00419   };
00420 
00421   /**
00422    * How the byte code operands are to be interpreted.
00423    */
00424   public static final short[][] TYPE_OF_OPERANDS = {
00425     {}/*nop*/, {}/*aconst_null*/, {}/*iconst_m1*/, {}/*iconst_0*/,
00426     {}/*iconst_1*/, {}/*iconst_2*/, {}/*iconst_3*/, {}/*iconst_4*/,
00427     {}/*iconst_5*/, {}/*lconst_0*/, {}/*lconst_1*/, {}/*fconst_0*/,
00428     {}/*fconst_1*/, {}/*fconst_2*/, {}/*dconst_0*/, {}/*dconst_1*/,
00429     {T_BYTE}/*bipush*/, {T_SHORT}/*sipush*/, {T_BYTE}/*ldc*/,
00430     {T_SHORT}/*ldc_w*/, {T_SHORT}/*ldc2_w*/,
00431     {T_BYTE}/*iload*/, {T_BYTE}/*lload*/, {T_BYTE}/*fload*/,
00432     {T_BYTE}/*dload*/, {T_BYTE}/*aload*/, {}/*iload_0*/,
00433     {}/*iload_1*/, {}/*iload_2*/, {}/*iload_3*/, {}/*lload_0*/,
00434     {}/*lload_1*/, {}/*lload_2*/, {}/*lload_3*/, {}/*fload_0*/,
00435     {}/*fload_1*/, {}/*fload_2*/, {}/*fload_3*/, {}/*dload_0*/,
00436     {}/*dload_1*/, {}/*dload_2*/, {}/*dload_3*/, {}/*aload_0*/,
00437     {}/*aload_1*/, {}/*aload_2*/, {}/*aload_3*/, {}/*iaload*/,
00438     {}/*laload*/, {}/*faload*/, {}/*daload*/, {}/*aaload*/,
00439     {}/*baload*/, {}/*caload*/, {}/*saload*/, {T_BYTE}/*istore*/,
00440     {T_BYTE}/*lstore*/, {T_BYTE}/*fstore*/, {T_BYTE}/*dstore*/,
00441     {T_BYTE}/*astore*/, {}/*istore_0*/, {}/*istore_1*/,
00442     {}/*istore_2*/, {}/*istore_3*/, {}/*lstore_0*/, {}/*lstore_1*/,
00443     {}/*lstore_2*/, {}/*lstore_3*/, {}/*fstore_0*/, {}/*fstore_1*/,
00444     {}/*fstore_2*/, {}/*fstore_3*/, {}/*dstore_0*/, {}/*dstore_1*/,
00445     {}/*dstore_2*/, {}/*dstore_3*/, {}/*astore_0*/, {}/*astore_1*/,
00446     {}/*astore_2*/, {}/*astore_3*/, {}/*iastore*/, {}/*lastore*/,
00447     {}/*fastore*/, {}/*dastore*/, {}/*aastore*/, {}/*bastore*/,
00448     {}/*castore*/, {}/*sastore*/, {}/*pop*/, {}/*pop2*/, {}/*dup*/,
00449     {}/*dup_x1*/, {}/*dup_x2*/, {}/*dup2*/, {}/*dup2_x1*/,
00450     {}/*dup2_x2*/, {}/*swap*/, {}/*iadd*/, {}/*ladd*/, {}/*fadd*/,
00451     {}/*dadd*/, {}/*isub*/, {}/*lsub*/, {}/*fsub*/, {}/*dsub*/,
00452     {}/*imul*/, {}/*lmul*/, {}/*fmul*/, {}/*dmul*/, {}/*idiv*/,
00453     {}/*ldiv*/, {}/*fdiv*/, {}/*ddiv*/, {}/*irem*/, {}/*lrem*/,
00454     {}/*frem*/, {}/*drem*/, {}/*ineg*/, {}/*lneg*/, {}/*fneg*/,
00455     {}/*dneg*/, {}/*ishl*/, {}/*lshl*/, {}/*ishr*/, {}/*lshr*/,
00456     {}/*iushr*/, {}/*lushr*/, {}/*iand*/, {}/*land*/, {}/*ior*/,
00457     {}/*lor*/, {}/*ixor*/, {}/*lxor*/, {T_BYTE, T_BYTE}/*iinc*/,
00458     {}/*i2l*/, {}/*i2f*/, {}/*i2d*/, {}/*l2i*/, {}/*l2f*/, {}/*l2d*/,
00459     {}/*f2i*/, {}/*f2l*/, {}/*f2d*/, {}/*d2i*/, {}/*d2l*/, {}/*d2f*/,
00460     {}/*i2b*/, {}/*i2c*/,{}/*i2s*/, {}/*lcmp*/, {}/*fcmpl*/,
00461     {}/*fcmpg*/, {}/*dcmpl*/, {}/*dcmpg*/, {T_SHORT}/*ifeq*/,
00462     {T_SHORT}/*ifne*/, {T_SHORT}/*iflt*/, {T_SHORT}/*ifge*/,
00463     {T_SHORT}/*ifgt*/, {T_SHORT}/*ifle*/, {T_SHORT}/*if_icmpeq*/,
00464     {T_SHORT}/*if_icmpne*/, {T_SHORT}/*if_icmplt*/,
00465     {T_SHORT}/*if_icmpge*/, {T_SHORT}/*if_icmpgt*/,
00466     {T_SHORT}/*if_icmple*/, {T_SHORT}/*if_acmpeq*/,
00467     {T_SHORT}/*if_acmpne*/, {T_SHORT}/*goto*/, {T_SHORT}/*jsr*/,
00468     {T_BYTE}/*ret*/, {}/*tableswitch*/, {}/*lookupswitch*/,
00469     {}/*ireturn*/, {}/*lreturn*/, {}/*freturn*/, {}/*dreturn*/,
00470     {}/*areturn*/, {}/*return*/, {T_SHORT}/*getstatic*/,
00471     {T_SHORT}/*putstatic*/, {T_SHORT}/*getfield*/,
00472     {T_SHORT}/*putfield*/, {T_SHORT}/*invokevirtual*/,
00473     {T_SHORT}/*invokespecial*/, {T_SHORT}/*invokestatic*/,
00474     {T_SHORT, T_BYTE, T_BYTE}/*invokeinterface*/, {},
00475     {T_SHORT}/*new*/, {T_BYTE}/*newarray*/,
00476     {T_SHORT}/*anewarray*/, {}/*arraylength*/, {}/*athrow*/,
00477     {T_SHORT}/*checkcast*/, {T_SHORT}/*instanceof*/,
00478     {}/*monitorenter*/, {}/*monitorexit*/, {T_BYTE}/*wide*/,
00479     {T_SHORT, T_BYTE}/*multianewarray*/, {T_SHORT}/*ifnull*/,
00480     {T_SHORT}/*ifnonnull*/, {T_INT}/*goto_w*/, {T_INT}/*jsr_w*/,
00481     {}/*breakpoint*/, {}, {}, {}, {}, {}, {}, {},
00482     {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {},
00483     {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {},
00484     {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {},
00485     {}/*impdep1*/, {}/*impdep2*/
00486   };
00487 
00488   /**
00489    * Names of opcodes.
00490    */ 
00491   public static final String[] OPCODE_NAMES = {
00492     "nop", "aconst_null", "iconst_m1", "iconst_0", "iconst_1",
00493     "iconst_2", "iconst_3", "iconst_4", "iconst_5", "lconst_0",
00494     "lconst_1", "fconst_0", "fconst_1", "fconst_2", "dconst_0",
00495     "dconst_1", "bipush", "sipush", "ldc", "ldc_w", "ldc2_w", "iload",
00496     "lload", "fload", "dload", "aload", "iload_0", "iload_1", "iload_2",
00497     "iload_3", "lload_0", "lload_1", "lload_2", "lload_3", "fload_0",
00498     "fload_1", "fload_2", "fload_3", "dload_0", "dload_1", "dload_2",
00499     "dload_3", "aload_0", "aload_1", "aload_2", "aload_3", "iaload",
00500     "laload", "faload", "daload", "aaload", "baload", "caload", "saload",
00501     "istore", "lstore", "fstore", "dstore", "astore", "istore_0",
00502     "istore_1", "istore_2", "istore_3", "lstore_0", "lstore_1",
00503     "lstore_2", "lstore_3", "fstore_0", "fstore_1", "fstore_2",
00504     "fstore_3", "dstore_0", "dstore_1", "dstore_2", "dstore_3",
00505     "astore_0", "astore_1", "astore_2", "astore_3", "iastore", "lastore",
00506     "fastore", "dastore", "aastore", "bastore", "castore", "sastore",
00507     "pop", "pop2", "dup", "dup_x1", "dup_x2", "dup2", "dup2_x1",
00508     "dup2_x2", "swap", "iadd", "ladd", "fadd", "dadd", "isub", "lsub",
00509     "fsub", "dsub", "imul", "lmul", "fmul", "dmul", "idiv", "ldiv",
00510     "fdiv", "ddiv", "irem", "lrem", "frem", "drem", "ineg", "lneg",
00511     "fneg", "dneg", "ishl", "lshl", "ishr", "lshr", "iushr", "lushr",
00512     "iand", "land", "ior", "lor", "ixor", "lxor", "iinc", "i2l", "i2f",
00513     "i2d", "l2i", "l2f", "l2d", "f2i", "f2l", "f2d", "d2i", "d2l", "d2f",
00514     "i2b", "i2c", "i2s", "lcmp", "fcmpl", "fcmpg",
00515     "dcmpl", "dcmpg", "ifeq", "ifne", "iflt", "ifge", "ifgt", "ifle",
00516     "if_icmpeq", "if_icmpne", "if_icmplt", "if_icmpge", "if_icmpgt",
00517     "if_icmple", "if_acmpeq", "if_acmpne", "goto", "jsr", "ret",
00518     "tableswitch", "lookupswitch", "ireturn", "lreturn", "freturn",
00519     "dreturn", "areturn", "return", "getstatic", "putstatic", "getfield",
00520     "putfield", "invokevirtual", "invokespecial", "invokestatic",
00521     "invokeinterface", ILLEGAL_OPCODE, "new", "newarray", "anewarray",
00522     "arraylength", "athrow", "checkcast", "instanceof", "monitorenter",
00523     "monitorexit", "wide", "multianewarray", "ifnull", "ifnonnull",
00524     "goto_w", "jsr_w", "breakpoint", ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00525     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00526     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00527     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00528     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00529     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00530     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00531     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00532     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00533     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00534     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00535     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00536     ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE, ILLEGAL_OPCODE,
00537     ILLEGAL_OPCODE, "impdep1", "impdep2"
00538   };
00539 
00540   /**
00541    * Number of words consumed on operand stack by instructions.
00542    */ 
00543   public static final int[] CONSUME_STACK = {
00544     0/*nop*/, 0/*aconst_null*/, 0/*iconst_m1*/, 0/*iconst_0*/, 0/*iconst_1*/,
00545     0/*iconst_2*/, 0/*iconst_3*/, 0/*iconst_4*/, 0/*iconst_5*/, 0/*lconst_0*/,
00546     0/*lconst_1*/, 0/*fconst_0*/, 0/*fconst_1*/, 0/*fconst_2*/, 0/*dconst_0*/,
00547     0/*dconst_1*/, 0/*bipush*/, 0/*sipush*/, 0/*ldc*/, 0/*ldc_w*/, 0/*ldc2_w*/, 0/*iload*/,
00548     0/*lload*/, 0/*fload*/, 0/*dload*/, 0/*aload*/, 0/*iload_0*/, 0/*iload_1*/, 0/*iload_2*/,
00549     0/*iload_3*/, 0/*lload_0*/, 0/*lload_1*/, 0/*lload_2*/, 0/*lload_3*/, 0/*fload_0*/,
00550     0/*fload_1*/, 0/*fload_2*/, 0/*fload_3*/, 0/*dload_0*/, 0/*dload_1*/, 0/*dload_2*/,
00551     0/*dload_3*/, 0/*aload_0*/, 0/*aload_1*/, 0/*aload_2*/, 0/*aload_3*/, 2/*iaload*/,
00552     2/*laload*/, 2/*faload*/, 2/*daload*/, 2/*aaload*/, 2/*baload*/, 2/*caload*/, 2/*saload*/,
00553     1/*istore*/, 2/*lstore*/, 1/*fstore*/, 2/*dstore*/, 1/*astore*/, 1/*istore_0*/,
00554     1/*istore_1*/, 1/*istore_2*/, 1/*istore_3*/, 2/*lstore_0*/, 2/*lstore_1*/,
00555     2/*lstore_2*/, 2/*lstore_3*/, 1/*fstore_0*/, 1/*fstore_1*/, 1/*fstore_2*/,
00556     1/*fstore_3*/, 2/*dstore_0*/, 2/*dstore_1*/, 2/*dstore_2*/, 2/*dstore_3*/,
00557     1/*astore_0*/, 1/*astore_1*/, 1/*astore_2*/, 1/*astore_3*/, 3/*iastore*/, 4/*lastore*/,
00558     3/*fastore*/, 4/*dastore*/, 3/*aastore*/, 3/*bastore*/, 3/*castore*/, 3/*sastore*/,
00559     1/*pop*/, 2/*pop2*/, 1/*dup*/, 2/*dup_x1*/, 3/*dup_x2*/, 2/*dup2*/, 3/*dup2_x1*/,
00560     4/*dup2_x2*/, 2/*swap*/, 2/*iadd*/, 4/*ladd*/, 2/*fadd*/, 4/*dadd*/, 2/*isub*/, 4/*lsub*/,
00561     2/*fsub*/, 4/*dsub*/, 2/*imul*/, 4/*lmul*/, 2/*fmul*/, 4/*dmul*/, 2/*idiv*/, 4/*ldiv*/,
00562     2/*fdiv*/, 4/*ddiv*/, 2/*irem*/, 4/*lrem*/, 2/*frem*/, 4/*drem*/, 1/*ineg*/, 2/*lneg*/,
00563     1/*fneg*/, 2/*dneg*/, 2/*ishl*/, 3/*lshl*/, 2/*ishr*/, 3/*lshr*/, 2/*iushr*/, 3/*lushr*/,
00564     2/*iand*/, 4/*land*/, 2/*ior*/, 4/*lor*/, 2/*ixor*/, 4/*lxor*/, 0/*iinc*/,
00565     1/*i2l*/, 1/*i2f*/, 1/*i2d*/, 2/*l2i*/, 2/*l2f*/, 2/*l2d*/, 1/*f2i*/, 1/*f2l*/,
00566     1/*f2d*/, 2/*d2i*/, 2/*d2l*/, 2/*d2f*/, 1/*i2b*/, 1/*i2c*/, 1/*i2s*/, 
00567     4/*lcmp*/, 2/*fcmpl*/, 2/*fcmpg*/, 4/*dcmpl*/, 4/*dcmpg*/, 1/*ifeq*/, 1/*ifne*/,
00568     1/*iflt*/, 1/*ifge*/, 1/*ifgt*/, 1/*ifle*/, 2/*if_icmpeq*/, 2/*if_icmpne*/, 2/*if_icmplt*/,
00569     2 /*if_icmpge*/, 2/*if_icmpgt*/, 2/*if_icmple*/, 2/*if_acmpeq*/, 2/*if_acmpne*/,
00570     0/*goto*/, 0/*jsr*/, 0/*ret*/, 1/*tableswitch*/, 1/*lookupswitch*/, 1/*ireturn*/,
00571     2/*lreturn*/, 1/*freturn*/, 2/*dreturn*/, 1/*areturn*/, 0/*return*/, 0/*getstatic*/,
00572     UNPREDICTABLE/*putstatic*/, 1/*getfield*/, UNPREDICTABLE/*putfield*/,
00573     UNPREDICTABLE/*invokevirtual*/, UNPREDICTABLE/*invokespecial*/,
00574     UNPREDICTABLE/*invokestatic*/,
00575     UNPREDICTABLE/*invokeinterface*/, UNDEFINED, 0/*new*/, 1/*newarray*/, 1/*anewarray*/,
00576     1/*arraylength*/, 1/*athrow*/, 1/*checkcast*/, 1/*instanceof*/, 1/*monitorenter*/,
00577     1/*monitorexit*/, 0/*wide*/, UNPREDICTABLE/*multianewarray*/, 1/*ifnull*/, 1/*ifnonnull*/,
00578     0/*goto_w*/, 0/*jsr_w*/, 0/*breakpoint*/, UNDEFINED, UNDEFINED,
00579     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00580     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00581     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00582     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00583     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00584     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00585     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00586     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00587     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00588     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00589     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00590     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00591     UNDEFINED, UNPREDICTABLE/*impdep1*/, UNPREDICTABLE/*impdep2*/
00592   };
00593 
00594   /**
00595    * Number of words produced onto operand stack by instructions.
00596    */ 
00597   public static final int[] PRODUCE_STACK = {
00598     0/*nop*/, 1/*aconst_null*/, 1/*iconst_m1*/, 1/*iconst_0*/, 1/*iconst_1*/,
00599     1/*iconst_2*/, 1/*iconst_3*/, 1/*iconst_4*/, 1/*iconst_5*/, 2/*lconst_0*/,
00600     2/*lconst_1*/, 1/*fconst_0*/, 1/*fconst_1*/, 1/*fconst_2*/, 2/*dconst_0*/,
00601     2/*dconst_1*/, 1/*bipush*/, 1/*sipush*/, 1/*ldc*/, 1/*ldc_w*/, 2/*ldc2_w*/, 1/*iload*/,
00602     2/*lload*/, 1/*fload*/, 2/*dload*/, 1/*aload*/, 1/*iload_0*/, 1/*iload_1*/, 1/*iload_2*/,
00603     1/*iload_3*/, 2/*lload_0*/, 2/*lload_1*/, 2/*lload_2*/, 2/*lload_3*/, 1/*fload_0*/,
00604     1/*fload_1*/, 1/*fload_2*/, 1/*fload_3*/, 2/*dload_0*/, 2/*dload_1*/, 2/*dload_2*/,
00605     2/*dload_3*/, 1/*aload_0*/, 1/*aload_1*/, 1/*aload_2*/, 1/*aload_3*/, 1/*iaload*/,
00606     2/*laload*/, 1/*faload*/, 2/*daload*/, 1/*aaload*/, 1/*baload*/, 1/*caload*/, 1/*saload*/,
00607     0/*istore*/, 0/*lstore*/, 0/*fstore*/, 0/*dstore*/, 0/*astore*/, 0/*istore_0*/,
00608     0/*istore_1*/, 0/*istore_2*/, 0/*istore_3*/, 0/*lstore_0*/, 0/*lstore_1*/,
00609     0/*lstore_2*/, 0/*lstore_3*/, 0/*fstore_0*/, 0/*fstore_1*/, 0/*fstore_2*/,
00610     0/*fstore_3*/, 0/*dstore_0*/, 0/*dstore_1*/, 0/*dstore_2*/, 0/*dstore_3*/,
00611     0/*astore_0*/, 0/*astore_1*/, 0/*astore_2*/, 0/*astore_3*/, 0/*iastore*/, 0/*lastore*/,
00612     0/*fastore*/, 0/*dastore*/, 0/*aastore*/, 0/*bastore*/, 0/*castore*/, 0/*sastore*/,
00613     0/*pop*/, 0/*pop2*/, 2/*dup*/, 3/*dup_x1*/, 4/*dup_x2*/, 4/*dup2*/, 5/*dup2_x1*/,
00614     6/*dup2_x2*/, 2/*swap*/, 1/*iadd*/, 2/*ladd*/, 1/*fadd*/, 2/*dadd*/, 1/*isub*/, 2/*lsub*/,
00615     1/*fsub*/, 2/*dsub*/, 1/*imul*/, 2/*lmul*/, 1/*fmul*/, 2/*dmul*/, 1/*idiv*/, 2/*ldiv*/,
00616     1/*fdiv*/, 2/*ddiv*/, 1/*irem*/, 2/*lrem*/, 1/*frem*/, 2/*drem*/, 1/*ineg*/, 2/*lneg*/,
00617     1/*fneg*/, 2/*dneg*/, 1/*ishl*/, 2/*lshl*/, 1/*ishr*/, 2/*lshr*/, 1/*iushr*/, 2/*lushr*/,
00618     1/*iand*/, 2/*land*/, 1/*ior*/, 2/*lor*/, 1/*ixor*/, 2/*lxor*/,
00619     0/*iinc*/, 2/*i2l*/, 1/*i2f*/, 2/*i2d*/, 1/*l2i*/, 1/*l2f*/, 2/*l2d*/, 1/*f2i*/,
00620     2/*f2l*/, 2/*f2d*/, 1/*d2i*/, 2/*d2l*/, 1/*d2f*/,
00621     1/*i2b*/, 1/*i2c*/, 1/*i2s*/, 1/*lcmp*/, 1/*fcmpl*/, 1/*fcmpg*/,
00622     1/*dcmpl*/, 1/*dcmpg*/, 0/*ifeq*/, 0/*ifne*/, 0/*iflt*/, 0/*ifge*/, 0/*ifgt*/, 0/*ifle*/,
00623     0/*if_icmpeq*/, 0/*if_icmpne*/, 0/*if_icmplt*/, 0/*if_icmpge*/, 0/*if_icmpgt*/,
00624     0/*if_icmple*/, 0/*if_acmpeq*/, 0/*if_acmpne*/, 0/*goto*/, 1/*jsr*/, 0/*ret*/,
00625     0/*tableswitch*/, 0/*lookupswitch*/, 0/*ireturn*/, 0/*lreturn*/, 0/*freturn*/,
00626     0/*dreturn*/, 0/*areturn*/, 0/*return*/, UNPREDICTABLE/*getstatic*/, 0/*putstatic*/,
00627     UNPREDICTABLE/*getfield*/, 0/*putfield*/, UNPREDICTABLE/*invokevirtual*/,
00628     UNPREDICTABLE/*invokespecial*/, UNPREDICTABLE/*invokestatic*/,
00629     UNPREDICTABLE/*invokeinterface*/, UNDEFINED, 1/*new*/, 1/*newarray*/, 1/*anewarray*/,
00630     1/*arraylength*/, 1/*athrow*/, 1/*checkcast*/, 1/*instanceof*/, 0/*monitorenter*/,
00631     0/*monitorexit*/, 0/*wide*/, 1/*multianewarray*/, 0/*ifnull*/, 0/*ifnonnull*/,
00632     0/*goto_w*/, 1/*jsr_w*/, 0/*breakpoint*/, UNDEFINED, UNDEFINED,
00633     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00634     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00635     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00636     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00637     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00638     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00639     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00640     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00641     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00642     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00643     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00644     UNDEFINED, UNDEFINED, UNDEFINED, UNDEFINED,
00645     UNDEFINED, UNPREDICTABLE/*impdep1*/, UNPREDICTABLE/*impdep2*/
00646   };
00647 
00648   /** Attributes and their corresponding names.
00649    */
00650   public static final byte ATTR_UNKNOWN              = -1;
00651   public static final byte ATTR_SOURCE_FILE          = 0;
00652   public static final byte ATTR_CONSTANT_VALUE       = 1;
00653   public static final byte ATTR_CODE                 = 2;
00654   public static final byte ATTR_EXCEPTIONS           = 3;
00655   public static final byte ATTR_LINE_NUMBER_TABLE    = 4;
00656   public static final byte ATTR_LOCAL_VARIABLE_TABLE = 5;
00657   public static final byte ATTR_INNER_CLASSES        = 6;
00658   public static final byte ATTR_SYNTHETIC            = 7;
00659   public static final byte ATTR_DEPRECATED           = 8;
00660   public static final byte ATTR_PMG                  = 9;
00661   public static final byte ATTR_SIGNATURE            = 10;
00662 
00663   public static final short KNOWN_ATTRIBUTES = 11;
00664 
00665   public static final String[] ATTRIBUTE_NAMES = {
00666     "SourceFile", "ConstantValue", "Code", "Exceptions",
00667     "LineNumberTable", "LocalVariableTable",
00668     "InnerClasses", "Synthetic", "Deprecated",
00669     "PMGClass", "Signature"
00670   };
00671 }

Generated at Thu Feb 7 06:43:01 2002 for Bandera by doxygen1.2.10 written by Dimitri van Heesch, © 1997-2001