@@ -1010,119 +1010,152 @@ public ProgramType programType() {
10101010 public boolean hasOutRegisters () {
10111011 return getRegisterFormat ().isOut ();
10121012 }
1013+ @ Override
10131014 public boolean isConstString () {
10141015 int value = this .value ;
10151016 return value == 0x1a || value == 0x1b ;
10161017 }
1018+ @ Override
10171019 public boolean isArrayGet () {
10181020 int value = this .value ;
10191021 return value >= 0x44 && value <= 0x4a ;
10201022 }
1023+ @ Override
10211024 public boolean isArrayPut () {
10221025 int value = this .value ;
10231026 return value >= 0x4b && value <= 0x51 ;
10241027 }
1028+ @ Override
10251029 public boolean isArrayOp () {
10261030 int value = this .value ;
10271031 return value >= 0x44 && value <= 0x51 ;
10281032 }
1033+ @ Override
10291034 public boolean isFieldOp () {
10301035 int value = this .value ;
10311036 return value >= 0x52 && value <= 0x6d ;
10321037 }
1038+ @ Override
10331039 public boolean isFieldInstanceOp () {
10341040 int value = this .value ;
10351041 return value >= 0x52 && value <= 0x5f ;
10361042 }
1043+ @ Override
10371044 public boolean isFieldInstanceGet () {
10381045 int value = this .value ;
10391046 return value >= 0x52 && value <= 0x58 ;
10401047 }
1048+ @ Override
10411049 public boolean isFieldInstancePut () {
10421050 int value = this .value ;
10431051 return value >= 0x59 && value <= 0x5f ;
10441052 }
1053+ @ Override
10451054 public boolean isFieldStaticOp () {
10461055 int value = this .value ;
10471056 return value >= 0x60 && value <= 0x6d ;
10481057 }
1058+ @ Override
10491059 public boolean isFieldStaticGet () {
10501060 int value = this .value ;
10511061 return value >= 0x60 && value <= 0x66 ;
10521062 }
1063+ @ Override
10531064 public boolean isFieldStaticPut () {
10541065 int value = this .value ;
10551066 return value >= 0x67 && value <= 0x6d ;
10561067 }
1068+ @ Override
10571069 public boolean isFieldGet () {
10581070 return isFieldInstanceGet () || isFieldStaticGet ();
10591071 }
1072+ @ Override
10601073 public boolean isFieldPut () {
10611074 return isFieldInstancePut () || isFieldStaticPut ();
10621075 }
1076+ @ Override
10631077 public boolean isMethodInvokeVirtual () {
10641078 int value = this .value ;
10651079 return value == 0x6e || value == 0x74 ;
10661080 }
1081+ @ Override
10671082 public boolean isMethodInvokeSuper () {
10681083 int value = this .value ;
10691084 return value == 0x6f || value == 0x75 ;
10701085 }
1086+ @ Override
10711087 public boolean isMethodInvokeDirect () {
10721088 int value = this .value ;
10731089 return value == 0x70 || value == 0x76 ;
10741090 }
1091+ @ Override
10751092 public boolean isMethodInvokeStatic () {
10761093 int value = this .value ;
10771094 return value == 0x71 || value == 0x77 ;
10781095 }
1096+ @ Override
10791097 public boolean isMethodInvokeInterface () {
10801098 int value = this .value ;
10811099 return value == 0x72 || value == 0x78 ;
10821100 }
1101+ @ Override
10831102 public boolean isMethodInvoke () {
10841103 int value = this .value ;
10851104 return value != 0x73 && value >= 0x6e && value <= 0x78 ;
10861105 }
1106+ @ Override
1107+ public boolean isConst () {
1108+ return isConstNumber () || isConstString () || this == CONST_CLASS ;
1109+ }
1110+ @ Override
10871111 public boolean isConstNumber () {
10881112 int value = this .value ;
10891113 return value >= 0x12 && value <= 0x19 ;
10901114 }
1115+ @ Override
10911116 public boolean isConstInteger () {
10921117 int value = this .value ;
10931118 return value >= 0x12 && value <= 0x15 ;
10941119 }
1120+ @ Override
10951121 public boolean isConstWide () {
10961122 int value = this .value ;
10971123 return value >= 0x16 && value <= 0x19 ;
10981124 }
1125+ @ Override
10991126 public boolean isReturn () {
11001127 int value = this .value ;
11011128 if (value >= 0x0e && value <= 0x11 ) {
11021129 return true ;
11031130 }
11041131 return value == 0xf1 || value == 0x73 ;
11051132 }
1133+ @ Override
11061134 public boolean isMoveResult () {
11071135 int value = this .value ;
11081136 return value == 0x0a || value == 0x0b || value == 0x0c ;
11091137 }
1138+ @ Override
11101139 public boolean isMove () {
11111140 int value = this .value ;
11121141 return value >= 0x1 && value <= 0x9 ;
11131142 }
1143+ @ Override
11141144 public boolean isIfTest () {
11151145 int value = this .value ;
11161146 return value >= 0x32 && value <= 0x3d ;
11171147 }
1148+ @ Override
11181149 public boolean isGoto () {
11191150 int value = this .value ;
11201151 return value == 0x28 || value == 0x29 || value == 0x2a ;
11211152 }
1153+ @ Override
11221154 public boolean isSwitch () {
11231155 int value = this .value ;
11241156 return value == 0x2b || value == 0x2c ;
11251157 }
1158+ @ Override
11261159 public boolean isPayload () {
11271160 int value = this .value ;
11281161 return value == 0x100 || value == 0x200 || value == 0x300 ;
@@ -1133,9 +1166,11 @@ public boolean isInsBranching() {
11331166 public boolean isBranching () {
11341167 return isInsBranching () || isSwitch ();
11351168 }
1169+ @ Override
11361170 public boolean isMethodExit () {
11371171 return isReturn () || this == THROW ;
11381172 }
1173+ @ Override
11391174 public boolean isRange () {
11401175 return getRegisterFormat ().isRange ();
11411176 }
0 commit comments