当前位置: 首页>>代码示例>>Java>>正文


Java Constants.ASTORE属性代码示例

本文整理汇总了Java中com.sun.org.apache.bcel.internal.Constants.ASTORE属性的典型用法代码示例。如果您正苦于以下问题:Java Constants.ASTORE属性的具体用法?Java Constants.ASTORE怎么用?Java Constants.ASTORE使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在com.sun.org.apache.bcel.internal.Constants的用法示例。


在下文中一共展示了Constants.ASTORE属性的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: initFromFile

/**
  * 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;
   }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:24,代码来源:LocalVariableInstruction.java

示例2: getType

/**
 * Returns the type associated with the instruction -
 * in case of ALOAD or ASTORE Type.OBJECT is returned.
 * This is just a bit incorrect, because ALOAD and ASTORE
 * may work on every ReferenceType (including Type.NULL) and
 * ASTORE may even work on a ReturnaddressType .
 * @return type associated with the instruction
 */
public Type getType(ConstantPoolGen cp) {
  switch(canon_tag) {
  case Constants.ILOAD: case Constants.ISTORE:
    return Type.INT;
  case Constants.LLOAD: case Constants.LSTORE:
    return Type.LONG;
  case Constants.DLOAD: case Constants.DSTORE:
    return Type.DOUBLE;
  case Constants.FLOAD: case Constants.FSTORE:
    return Type.FLOAT;
  case Constants.ALOAD: case Constants.ASTORE:
    return Type.OBJECT;

  default: throw new ClassGenException("Oops: unknown case in switch" + canon_tag);
  }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:24,代码来源:LocalVariableInstruction.java


注:本文中的com.sun.org.apache.bcel.internal.Constants.ASTORE属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。