MCPcopy Create free account
hub / github.com/GraxCode/zelixkiller / incrementLocal

Method incrementLocal

src/me/lpk/analysis/StackHelper.java:387–409  ·  view source on GitHub ↗
(IincInsnNode iinc, InsnValue value)

Source from the content-addressed store, hash-verified

385 }
386
387 public InsnValue incrementLocal(IincInsnNode iinc, InsnValue value) {
388 Object obj = value.getValue();
389 if (obj == null) {
390 return newValue(value.getType());
391 }
392 if (value.getType().equals(Type.BYTE_TYPE)) {
393 return InsnValue.byteValue((byte) (((Number) obj).byteValue() + iinc.incr));
394 } else if (value.getType().equals(Type.INT_TYPE)) {
395 return InsnValue.byteValue((int) (((Number) obj).intValue() + iinc.incr));
396 } else if (value.getType().equals(Type.CHAR_TYPE)) {
397 return InsnValue.charValue((char) (((Number) obj).intValue() + iinc.incr));
398 } else if (value.getType().equals(Type.LONG_TYPE)) {
399 return InsnValue.longValue((long) (((Number) obj).longValue() + iinc.incr));
400 } else if (value.getType().equals(Type.DOUBLE_TYPE)) {
401 return InsnValue.doubleValue((double) (((Number) obj).doubleValue() + iinc.incr));
402 } else if (value.getType().equals(Type.FLOAT_TYPE)) {
403 return InsnValue.floatValue((float) (((Number) obj).floatValue() + iinc.incr));
404 } else if (value.getType().equals(Type.SHORT_TYPE)) {
405 return InsnValue.shortValue((short) (((Number) obj).shortValue() + iinc.incr));
406 }
407
408 return null;
409 }
410
411 public InsnValue convertValue(AbstractInsnNode insn, InsnValue value) {
412 Object obj = value.getValue();

Callers 1

executeMethod · 0.80

Calls 11

newValueMethod · 0.95
byteValueMethod · 0.95
charValueMethod · 0.95
longValueMethod · 0.95
doubleValueMethod · 0.95
floatValueMethod · 0.95
shortValueMethod · 0.95
getTypeMethod · 0.80
intValueMethod · 0.80
getValueMethod · 0.45
equalsMethod · 0.45

Tested by

no test coverage detected