本文整理汇总了Java中org.apache.bcel.util.ByteSequence.readUnsignedByte方法的典型用法代码示例。如果您正苦于以下问题:Java ByteSequence.readUnsignedByte方法的具体用法?Java ByteSequence.readUnsignedByte怎么用?Java ByteSequence.readUnsignedByte使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.bcel.util.ByteSequence
的用法示例。
在下文中一共展示了ByteSequence.readUnsignedByte方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
* PRE: (ILOAD <= tag <= ALOAD_3) || (ISTORE <= tag <= ASTORE_3)
*/
protected void initFromFile(ByteSequence bytes, boolean wide)
throws IOException
{
if(wide) {
n = bytes.readUnsignedShort();
length = 4;
} else if(((opcode >= Constants.ILOAD) &&
(opcode <= Constants.ALOAD)) ||
((opcode >= Constants.ISTORE) &&
(opcode <= Constants.ASTORE))) {
n = bytes.readUnsignedByte();
length = 2;
} else if(opcode <= Constants.ALOAD_3) { // compact load instruction such as ILOAD_2
n = (opcode - Constants.ILOAD_0) % 4;
length = 1;
} else { // Assert ISTORE_0 <= tag <= ASTORE_3
n = (opcode - Constants.ISTORE_0) % 4;
length = 1;
}
}
示例2: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
* PRE: (ILOAD <= tag <= ALOAD_3) || (ISTORE <= tag <= ASTORE_3)
*/
protected void initFromFile( ByteSequence bytes, boolean wide ) throws IOException {
if (wide) {
n = bytes.readUnsignedShort();
length = 4;
} else if (((opcode >= Constants.ILOAD) && (opcode <= Constants.ALOAD))
|| ((opcode >= Constants.ISTORE) && (opcode <= Constants.ASTORE))) {
n = bytes.readUnsignedByte();
length = 2;
} else if (opcode <= Constants.ALOAD_3) { // compact load instruction such as ILOAD_2
n = (opcode - Constants.ILOAD_0) % 4;
length = 1;
} else { // Assert ISTORE_0 <= tag <= ASTORE_3
n = (opcode - Constants.ISTORE_0) % 4;
length = 1;
}
}
示例3: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
* PRE: (ILOAD <= tag <= ALOAD_3) || (ISTORE <= tag <= ASTORE_3)
*/
protected void initFromFile(ByteSequence bytes, boolean wide)
throws IOException {
if (wide) {
n = bytes.readUnsignedShort();
length = 4;
} else if (((opcode >= Constants.ILOAD) &&
(opcode <= Constants.ALOAD)) ||
((opcode >= Constants.ISTORE) &&
(opcode <= Constants.ASTORE))) {
n = bytes.readUnsignedByte();
length = 2;
} else if (opcode <= Constants.ALOAD_3) { // compact load instruction such as ILOAD_2
n = (opcode - Constants.ILOAD_0) % 4;
length = 1;
} else { // Assert ISTORE_0 <= tag <= ASTORE_3
n = (opcode - Constants.ISTORE_0) % 4;
length = 1;
}
}
示例4: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
*/
protected void initFromFile(ByteSequence bytes, boolean wide)
throws IOException
{
length = 2;
index = bytes.readUnsignedByte();
}
示例5: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (i.e., index) from file.
*/
protected void initFromFile(ByteSequence bytes, boolean wide)
throws IOException
{
super.initFromFile(bytes, wide);
length = 5;
nargs = bytes.readUnsignedByte();
bytes.readByte(); // Skip 0 byte
}
示例6: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
*/
protected void initFromFile(ByteSequence bytes, boolean wide) throws IOException
{
this.wide = wide;
if(wide) {
length = 6;
n = bytes.readUnsignedShort();
c = bytes.readShort();
} else {
length = 3;
n = bytes.readUnsignedByte();
c = bytes.readByte();
}
}
示例7: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
*/
protected void initFromFile(ByteSequence bytes, boolean wide) throws IOException
{
this.wide = wide;
if(wide) {
index = bytes.readUnsignedShort();
length = 4;
} else {
index = bytes.readUnsignedByte();
length = 2;
}
}
示例8: readInstruction
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read an instruction from (byte code) input stream and return the
* appropiate object.
*
* @param bytes input stream bytes
* @return instruction object being read
*/
public static final Instruction readInstruction( ByteSequence bytes ) throws IOException {
boolean wide = false;
short opcode = (short) bytes.readUnsignedByte();
Instruction obj = null;
if (opcode == Constants.WIDE) { // Read next opcode after wide byte
wide = true;
opcode = (short) bytes.readUnsignedByte();
}
if (InstructionConstants.INSTRUCTIONS[opcode] != null) {
return InstructionConstants.INSTRUCTIONS[opcode]; // Used predefined immutable object, if available
}
/* Find appropiate class, instantiate an (empty) instruction object
* and initialize it by hand.
*/
Class clazz;
try {
clazz = Class.forName(className(opcode));
} catch (ClassNotFoundException cnfe) {
// If a class by that name does not exist, the opcode is illegal.
// Note that IMPDEP1, IMPDEP2, BREAKPOINT are also illegal in a sense.
throw new ClassGenException("Illegal opcode detected.");
}
try {
obj = (Instruction) clazz.newInstance();
if (wide
&& !((obj instanceof LocalVariableInstruction) || (obj instanceof IINC) || (obj instanceof RET))) {
throw new Exception("Illegal opcode after wide: " + opcode);
}
obj.setOpcode(opcode);
obj.initFromFile(bytes, wide); // Do further initializations, if any
// Byte code offset set in InstructionList
} catch (Exception e) {
throw new ClassGenException(e.toString());
}
return obj;
}
示例9: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (i.e., index) from file.
*/
protected void initFromFile( ByteSequence bytes, boolean wide ) throws IOException {
super.initFromFile(bytes, wide);
length = 5;
nargs = bytes.readUnsignedByte();
bytes.readByte(); // Skip 0 byte
}
示例10: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
*/
protected void initFromFile( ByteSequence bytes, boolean wide ) throws IOException {
this.wide = wide;
if (wide) {
length = 6;
n = bytes.readUnsignedShort();
c = bytes.readShort();
} else {
length = 3;
n = bytes.readUnsignedByte();
c = bytes.readByte();
}
}
示例11: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
*/
protected void initFromFile( ByteSequence bytes, boolean wide ) throws IOException {
this.wide = wide;
if (wide) {
index = bytes.readUnsignedShort();
length = 4;
} else {
index = bytes.readUnsignedByte();
length = 2;
}
}
示例12: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (i.e., index) from file.
*/
protected void initFromFile(ByteSequence bytes, boolean wide)
throws IOException {
super.initFromFile(bytes, wide);
length = 5;
nargs = bytes.readUnsignedByte();
bytes.readByte(); // Skip 0 byte
}
示例13: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
*/
protected void initFromFile(ByteSequence bytes, boolean wide) throws IOException {
this.wide = wide;
if (wide) {
length = 6;
n = bytes.readUnsignedShort();
c = bytes.readShort();
} else {
length = 3;
n = bytes.readUnsignedByte();
c = bytes.readByte();
}
}
示例14: initFromFile
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read needed data (e.g. index) from file.
*/
protected void initFromFile(ByteSequence bytes, boolean wide) throws IOException {
this.wide = wide;
if (wide) {
index = bytes.readUnsignedShort();
length = 4;
} else {
index = bytes.readUnsignedByte();
length = 2;
}
}
示例15: readInstruction
import org.apache.bcel.util.ByteSequence; //导入方法依赖的package包/类
/**
* Read an instruction from (byte code) input stream and return the
* appropiate object.
*
* @param file file to read from
* @return instruction object being read
*/
public static final Instruction readInstruction(ByteSequence bytes)
throws IOException
{
boolean wide = false;
short opcode = (short)bytes.readUnsignedByte();
Instruction obj = null;
if(opcode == Constants.WIDE) { // Read next opcode after wide byte
wide = true;
opcode = (short)bytes.readUnsignedByte();
}
if(InstructionConstants.INSTRUCTIONS[opcode] != null)
return InstructionConstants.INSTRUCTIONS[opcode]; // Used predefined immutable object, if available
/* Find appropiate class, instantiate an (empty) instruction object
* and initialize it by hand.
*/
Class clazz;
try {
clazz = Class.forName(className(opcode));
} catch (ClassNotFoundException cnfe){
// If a class by that name does not exist, the opcode is illegal.
// Note that IMPDEP1, IMPDEP2, BREAKPOINT are also illegal in a sense.
throw new ClassGenException("Illegal opcode detected.");
}
try {
obj = (Instruction)clazz.newInstance();
if(wide && !((obj instanceof LocalVariableInstruction) ||
(obj instanceof IINC) ||
(obj instanceof RET)))
throw new Exception("Illegal opcode after wide: " + opcode);
obj.setOpcode(opcode);
obj.initFromFile(bytes, wide); // Do further initializations, if any
// Byte code offset set in InstructionList
} catch(Exception e) { throw new ClassGenException(e.toString()); }
return obj;
}