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


Java Constants.MAX_ACC_FLAG属性代码示例

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


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

示例1: accessToString

/**
 * Convert bit field of flags into string such as `static final'.
 *
 * Special case: Classes compiled with new compilers and with the
 * `ACC_SUPER' flag would be said to be "synchronized". This is
 * because SUN used the same value for the flags `ACC_SUPER' and
 * `ACC_SYNCHRONIZED'.
 *
 * @param  access_flags Access flags
 * @param  for_class access flags are for class qualifiers ?
 * @return String representation of flags
 */
public static final String accessToString(int access_flags,
                                          boolean for_class)
{
  StringBuffer buf = new StringBuffer();

  int p = 0;
  for(int i=0; p < Constants.MAX_ACC_FLAG; i++) { // Loop through known flags
    p = pow2(i);

    if((access_flags & p) != 0) {
      /* Special case: Classes compiled with new compilers and with the
       * `ACC_SUPER' flag would be said to be "synchronized". This is
       * because SUN used the same value for the flags `ACC_SUPER' and
       * `ACC_SYNCHRONIZED'.
       */
      if(for_class && ((p == Constants.ACC_SUPER) || (p == Constants.ACC_INTERFACE)))
        continue;

      buf.append(Constants.ACCESS_NAMES[i] + " ");
    }
  }

  return buf.toString().trim();
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:36,代码来源:Utility.java

示例2: printFlags

static String printFlags(int flags, boolean for_class) {
  if(flags == 0)
    return "0";

  StringBuffer buf = new StringBuffer();
  for(int i=0, pow=1; i <= Constants.MAX_ACC_FLAG; i++) {
    if((flags & pow) != 0) {
      if((pow == Constants.ACC_SYNCHRONIZED) && for_class)
        buf.append("ACC_SUPER | ");
      else
        buf.append("ACC_" + Constants.ACCESS_NAMES[i].toUpperCase() + " | ");
    }

    pow <<= 1;
  }

  String str = buf.toString();
  return str.substring(0, str.length() - 3);
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:19,代码来源:BCELifier.java


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