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


Java Opcodes.ACC_PRIVATE属性代码示例

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


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

示例1: visitMethod

@Override
public MethodVisitor visitMethod(final int access, final String name,
        final String desc, final String signature, final String[] exceptions) {
    MethodVisitor mv;
    if ("<clinit>".equals(name)) {
        int a = Opcodes.ACC_PRIVATE + Opcodes.ACC_STATIC;
        String n = prefix + counter++;
        mv = cv.visitMethod(a, n, desc, signature, exceptions);

        if (clinit == null) {
            clinit = cv.visitMethod(a, name, desc, null, null);
        }
        clinit.visitMethodInsn(Opcodes.INVOKESTATIC, this.name, n, desc,
                false);
    } else {
        mv = cv.visitMethod(access, name, desc, signature, exceptions);
    }
    return mv;
}
 
开发者ID:acmerli,项目名称:fastAOP,代码行数:19,代码来源:StaticInitMerger.java

示例2: checkAccess

/**
 * Checks that the given access flags do not contain invalid flags. This
 * method also checks that mutually incompatible flags are not set
 * simultaneously.
 * 
 * @param access
 *            the access flags to be checked
 * @param possibleAccess
 *            the valid access flags.
 */
static void checkAccess(final int access, final int possibleAccess) {
    if ((access & ~possibleAccess) != 0) {
        throw new IllegalArgumentException("Invalid access flags: "
                + access);
    }
    int pub = (access & Opcodes.ACC_PUBLIC) == 0 ? 0 : 1;
    int pri = (access & Opcodes.ACC_PRIVATE) == 0 ? 0 : 1;
    int pro = (access & Opcodes.ACC_PROTECTED) == 0 ? 0 : 1;
    if (pub + pri + pro > 1) {
        throw new IllegalArgumentException(
                "public private and protected are mutually exclusive: "
                        + access);
    }
    int fin = (access & Opcodes.ACC_FINAL) == 0 ? 0 : 1;
    int abs = (access & Opcodes.ACC_ABSTRACT) == 0 ? 0 : 1;
    if (fin + abs > 1) {
        throw new IllegalArgumentException(
                "final and abstract are mutually exclusive: " + access);
    }
}
 
开发者ID:ItzSomebody,项目名称:DirectLeaks-AntiReleak-Remover,代码行数:30,代码来源:CheckClassAdapter.java

示例3: visit

@Override
public void visit(final int version, final int access, final String name,
    final String signature, final String superName, final String[] interfaces) {
  /*
   * Record the original access bits so we can restore them before the next
   * link in the visitor chain.
   */
  originalClassAccess = access;
  accessCaptured = true;

  // If we're checking an inner class, suppress access bits that ASM chokes on.
  int checkClassAccess = access;
  if (name.indexOf('$') >= 0) {
    checkClassAccess &= ~(Opcodes.ACC_PROTECTED | Opcodes.ACC_PRIVATE | Opcodes.ACC_STATIC);
  }
  super.visit(version, checkClassAccess, name, signature, superName, interfaces);
}
 
开发者ID:skhalifa,项目名称:QDrill,代码行数:17,代码来源:InnerClassAccessStripper.java

示例4: get_access

@Override
public int get_access() throws CompileException {
  if ((method_node.access & Opcodes.ACC_PUBLIC) != 0) {
    return Opcodes.ACC_PUBLIC;
  } else if ((method_node.access & Opcodes.ACC_PRIVATE) != 0) {
    return Opcodes.ACC_PRIVATE;
  } else if ((method_node.access & Opcodes.ACC_PROTECTED) != 0) {
    return Opcodes.ACC_PROTECTED;
  }
  throw new CompileException("Invalid access priviledge");
}
 
开发者ID:Samsung,项目名称:MeziLang,代码行数:11,代码来源:TResolvedFunc.java

示例5: visitField

@Override
public FieldVisitor visitField(int access, String name, String desc, String signature, Object value) {
    if (((access & PUBLIC_STATIC_FINAL) == PUBLIC_STATIC_FINAL) && Type.getDescriptor(String.class).equals(desc)) {
        missingStaticStringConstantGetters.put("get" + name, (String) value);
    }
    if (((access & Opcodes.ACC_PRIVATE) > 0) && !isStatic(access) && (Type.getDescriptor(boolean.class).equals(desc))) {
        booleanFields.add(name);
    }
    return super.visitField(access, name, desc, signature, value);
}
 
开发者ID:lxxlxx888,项目名称:Reer,代码行数:10,代码来源:MixInLegacyTypesClassLoader.java

示例6: visitMethod

@Override
public MethodVisitor visitMethod(final int access, final String name,
        final String desc, final String signature, final String[] exceptions) {
    if (computeSVUID) {
        if ("<clinit>".equals(name)) {
            hasStaticInitializer = true;
        }
        /*
         * Remembers non private constructors and methods for SVUID
         * computation For constructor and method modifiers, only the
         * ACC_PUBLIC, ACC_PRIVATE, ACC_PROTECTED, ACC_STATIC, ACC_FINAL,
         * ACC_SYNCHRONIZED, ACC_NATIVE, ACC_ABSTRACT and ACC_STRICT flags
         * are used.
         */
        int mods = access
                & (Opcodes.ACC_PUBLIC | Opcodes.ACC_PRIVATE
                        | Opcodes.ACC_PROTECTED | Opcodes.ACC_STATIC
                        | Opcodes.ACC_FINAL | Opcodes.ACC_SYNCHRONIZED
                        | Opcodes.ACC_NATIVE | Opcodes.ACC_ABSTRACT | Opcodes.ACC_STRICT);

        // all non private methods
        if ((access & Opcodes.ACC_PRIVATE) == 0) {
            if ("<init>".equals(name)) {
                svuidConstructors.add(new Item(name, mods, desc));
            } else if (!"<clinit>".equals(name)) {
                svuidMethods.add(new Item(name, mods, desc));
            }
        }
    }

    return super.visitMethod(access, name, desc, signature, exceptions);
}
 
开发者ID:ItzSomebody,项目名称:DirectLeaks-AntiReleak-Remover,代码行数:32,代码来源:SerialVersionUIDAdder.java

示例7: visitField

@Override
public FieldVisitor visitField(final int access, final String name,
        final String desc, final String signature, final Object value) {
    if (computeSVUID) {
        if ("serialVersionUID".equals(name)) {
            // since the class already has SVUID, we won't be computing it.
            computeSVUID = false;
            hasSVUID = true;
        }
        /*
         * Remember field for SVUID computation For field modifiers, only
         * the ACC_PUBLIC, ACC_PRIVATE, ACC_PROTECTED, ACC_STATIC,
         * ACC_FINAL, ACC_VOLATILE, and ACC_TRANSIENT flags are used when
         * computing serialVersionUID values.
         */
        if ((access & Opcodes.ACC_PRIVATE) == 0
                || (access & (Opcodes.ACC_STATIC | Opcodes.ACC_TRANSIENT)) == 0) {
            int mods = access
                    & (Opcodes.ACC_PUBLIC | Opcodes.ACC_PRIVATE
                            | Opcodes.ACC_PROTECTED | Opcodes.ACC_STATIC
                            | Opcodes.ACC_FINAL | Opcodes.ACC_VOLATILE | Opcodes.ACC_TRANSIENT);
            svuidFields.add(new Item(name, mods, desc));
        }
    }

    return super.visitField(access, name, desc, signature, value);
}
 
开发者ID:ItzSomebody,项目名称:DirectLeaks-AntiReleak-Remover,代码行数:27,代码来源:SerialVersionUIDAdder.java

示例8: write

/** Writes the function to given ClassVisitor. */
void write (ClassVisitor writer, CompilerSettings settings, Globals globals) {
    int access = Opcodes.ACC_PRIVATE | Opcodes.ACC_STATIC;
    if (synthetic) {
        access |= Opcodes.ACC_SYNTHETIC;
    }
    final MethodWriter function = new MethodWriter(access, method.method, writer, globals.getStatements(), settings);
    function.visitCode();
    write(function, globals);
    function.endMethod();
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:11,代码来源:SFunction.java

示例9: getOpcodeVisibility

public static int getOpcodeVisibility(String visibility) {
  if ("public".equals(visibility)) {
    return Opcodes.ACC_PUBLIC;
  }
  if ("protected".equals(visibility)) {
    return Opcodes.ACC_PROTECTED;
  }
  if ("private".equals(visibility)) {
    return Opcodes.ACC_PRIVATE;
  }
  return 0;
}
 
开发者ID:fergarrui,项目名称:custom-bytecode-analyzer,代码行数:12,代码来源:RuleHelper.java

示例10: isPrivate

private static boolean isPrivate(int access) {
    return (access & Opcodes.ACC_PRIVATE) != 0;
}
 
开发者ID:lxxlxx888,项目名称:Reer,代码行数:3,代码来源:ClassDependenciesVisitor.java

示例11: appendAccess

static void appendAccess(final int access, final StringBuilder sb) {
    if ((access & Opcodes.ACC_PUBLIC) != 0) {
        sb.append("public ");
    }
    if ((access & Opcodes.ACC_PRIVATE) != 0) {
        sb.append("private ");
    }
    if ((access & Opcodes.ACC_PROTECTED) != 0) {
        sb.append("protected ");
    }
    if ((access & Opcodes.ACC_FINAL) != 0) {
        sb.append("final ");
    }
    if ((access & Opcodes.ACC_STATIC) != 0) {
        sb.append("static ");
    }
    if ((access & Opcodes.ACC_SUPER) != 0) {
        if ((access & ACCESS_CLASS) == 0) {
            sb.append("synchronized ");
        } else {
            sb.append("super ");
        }
    }
    if ((access & Opcodes.ACC_VOLATILE) != 0) {
        if ((access & ACCESS_FIELD) == 0) {
            sb.append("bridge ");
        } else {
            sb.append("volatile ");
        }
    }
    if ((access & Opcodes.ACC_TRANSIENT) != 0) {
        if ((access & ACCESS_FIELD) == 0) {
            sb.append("varargs ");
        } else {
            sb.append("transient ");
        }
    }
    if ((access & Opcodes.ACC_NATIVE) != 0) {
        sb.append("native ");
    }
    if ((access & Opcodes.ACC_STRICT) != 0) {
        sb.append("strict ");
    }
    if ((access & Opcodes.ACC_INTERFACE) != 0) {
        sb.append("interface ");
    }
    if ((access & Opcodes.ACC_ABSTRACT) != 0) {
        sb.append("abstract ");
    }
    if ((access & Opcodes.ACC_SYNTHETIC) != 0) {
        sb.append("synthetic ");
    }
    if ((access & Opcodes.ACC_ANNOTATION) != 0) {
        sb.append("annotation ");
    }
    if ((access & Opcodes.ACC_ENUM) != 0) {
        sb.append("enum ");
    }
    if ((access & Opcodes.ACC_DEPRECATED) != 0) {
        sb.append("deprecated ");
    }
    if ((access & Opcodes.ACC_MANDATED) != 0) {
        sb.append("mandated ");
    }
}
 
开发者ID:acmerli,项目名称:fastAOP,代码行数:65,代码来源:SAXClassAdapter.java

示例12: publicize

private static int publicize(int access) {
	access &= ~(Opcodes.ACC_PRIVATE | Opcodes.ACC_PROTECTED);
	access |= Opcodes.ACC_PUBLIC;
	return access;
}
 
开发者ID:jonathanedgecombe,项目名称:anvil,代码行数:5,代码来源:ClassPublicizer.java

示例13: isHierarchyBarrier

private static boolean isHierarchyBarrier(int access) {
	return (access & (Opcodes.ACC_PRIVATE | Opcodes.ACC_STATIC)) != 0;
}
 
开发者ID:sfPlayer1,项目名称:Matcher,代码行数:3,代码来源:ClassFeatureExtractor.java

示例14: appendAccess

/**
 * Appends a string representation of the given access modifiers to
 * {@link #buf buf}.
 *
 * @param access
 *            some access modifiers.
 */
private void appendAccess(final int access) {
    if ((access & Opcodes.ACC_PUBLIC) != 0) {
        buf.append("public ");
    }
    if ((access & Opcodes.ACC_PRIVATE) != 0) {
        buf.append("private ");
    }
    if ((access & Opcodes.ACC_PROTECTED) != 0) {
        buf.append("protected ");
    }
    if ((access & Opcodes.ACC_FINAL) != 0) {
        buf.append("final ");
    }
    if ((access & Opcodes.ACC_STATIC) != 0) {
        buf.append("static ");
    }
    if ((access & Opcodes.ACC_SYNCHRONIZED) != 0) {
        buf.append("synchronized ");
    }
    if ((access & Opcodes.ACC_VOLATILE) != 0) {
        buf.append("volatile ");
    }
    if ((access & Opcodes.ACC_TRANSIENT) != 0) {
        buf.append("transient ");
    }
    if ((access & Opcodes.ACC_ABSTRACT) != 0) {
        buf.append("abstract ");
    }
    if ((access & Opcodes.ACC_STRICT) != 0) {
        buf.append("strictfp ");
    }
    if ((access & Opcodes.ACC_SYNTHETIC) != 0) {
        buf.append("synthetic ");
    }
    if ((access & Opcodes.ACC_MANDATED) != 0) {
        buf.append("mandated ");
    }
    if ((access & Opcodes.ACC_ENUM) != 0) {
        buf.append("enum ");
    }
}
 
开发者ID:ItzSomebody,项目名称:DirectLeaks-AntiReleak-Remover,代码行数:48,代码来源:Textifier.java

示例15: isCustomDeserializationMethod

public static boolean isCustomDeserializationMethod(int access, String name, String desc) {
  return access == Opcodes.ACC_PRIVATE && READ_OBJECT_NAME.equals(name) && desc.contains(READ_OBJECT_ARGUMENT);
}
 
开发者ID:fergarrui,项目名称:custom-bytecode-analyzer,代码行数:3,代码来源:SerializationHelper.java


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