|
|
|
@ -1830,24 +1830,19 @@ public class ClassReader { |
|
|
|
|
v += 2; |
|
|
|
|
break; |
|
|
|
|
case 'B': // pointer to CONSTANT_Byte
|
|
|
|
|
av.visit(name, |
|
|
|
|
new Byte((byte) readInt(items[readUnsignedShort(v)]))); |
|
|
|
|
av.visit(name, (byte) readInt(items[readUnsignedShort(v)])); |
|
|
|
|
v += 2; |
|
|
|
|
break; |
|
|
|
|
case 'Z': // pointer to CONSTANT_Boolean
|
|
|
|
|
av.visit(name, |
|
|
|
|
readInt(items[readUnsignedShort(v)]) == 0 ? Boolean.FALSE |
|
|
|
|
: Boolean.TRUE); |
|
|
|
|
av.visit(name, readInt(items[readUnsignedShort(v)]) == 0 ? Boolean.FALSE : Boolean.TRUE); |
|
|
|
|
v += 2; |
|
|
|
|
break; |
|
|
|
|
case 'S': // pointer to CONSTANT_Short
|
|
|
|
|
av.visit(name, new Short( |
|
|
|
|
(short) readInt(items[readUnsignedShort(v)]))); |
|
|
|
|
av.visit(name, (short) readInt(items[readUnsignedShort(v)])); |
|
|
|
|
v += 2; |
|
|
|
|
break; |
|
|
|
|
case 'C': // pointer to CONSTANT_Char
|
|
|
|
|
av.visit(name, new Character( |
|
|
|
|
(char) readInt(items[readUnsignedShort(v)]))); |
|
|
|
|
av.visit(name, (char) readInt(items[readUnsignedShort(v)])); |
|
|
|
|
v += 2; |
|
|
|
|
break; |
|
|
|
|
case 's': // pointer to CONSTANT_Utf8
|
|
|
|
@ -2471,13 +2466,13 @@ public class ClassReader { |
|
|
|
|
int index = items[item]; |
|
|
|
|
switch (b[index - 1]) { |
|
|
|
|
case ClassWriter.INT: |
|
|
|
|
return new Integer(readInt(index)); |
|
|
|
|
return readInt(index); |
|
|
|
|
case ClassWriter.FLOAT: |
|
|
|
|
return new Float(Float.intBitsToFloat(readInt(index))); |
|
|
|
|
return Float.intBitsToFloat(readInt(index)); |
|
|
|
|
case ClassWriter.LONG: |
|
|
|
|
return new Long(readLong(index)); |
|
|
|
|
return readLong(index); |
|
|
|
|
case ClassWriter.DOUBLE: |
|
|
|
|
return new Double(Double.longBitsToDouble(readLong(index))); |
|
|
|
|
return Double.longBitsToDouble(readLong(index)); |
|
|
|
|
case ClassWriter.CLASS: |
|
|
|
|
return Type.getObjectType(readUTF8(index, buf)); |
|
|
|
|
case ClassWriter.STR: |
|
|
|
|