當前位置: 首頁>>代碼示例>>Java>>正文


Java ModifiedPass3bVerifier類代碼示例

本文整理匯總了Java中org.apache.bcel.verifier.structurals.ModifiedPass3bVerifier的典型用法代碼示例。如果您正苦於以下問題:Java ModifiedPass3bVerifier類的具體用法?Java ModifiedPass3bVerifier怎麽用?Java ModifiedPass3bVerifier使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


ModifiedPass3bVerifier類屬於org.apache.bcel.verifier.structurals包,在下文中一共展示了ModifiedPass3bVerifier類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: nullAspectjBCELAdapt

import org.apache.bcel.verifier.structurals.ModifiedPass3bVerifier; //導入依賴的package包/類
static void nullAspectjBCELAdapt(final byte[] b) throws IOException {
    org.aspectj.apache.bcel.classfile.JavaClass jc = new org.aspectj.apache.bcel.classfile.ClassParser(new ByteArrayInputStream(b),
            "class-name").parse();
    org.aspectj.apache.bcel.generic.ClassGen cg = new org.aspectj.apache.bcel.generic.ClassGen(jc);
    org.aspectj.apache.bcel.generic.ConstantPoolGen cp = cg.getConstantPool();
    org.aspectj.apache.bcel.classfile.Method[] ms = cg.getMethods();
    for (int k = 0; k < ms.length; ++k) {
        org.aspectj.apache.bcel.generic.MethodGen mg = new org.aspectj.apache.bcel.generic.MethodGen(ms[k],
                cg.getClassName(),
                cp);
        boolean lv = ms[k].getLocalVariableTable() == null;
        boolean ln = ms[k].getLineNumberTable() == null;
        if (lv) {
            mg.removeLocalVariables();
        }
        if (ln) {
            mg.removeLineNumbers();
        }
        mg.stripAttributes(skipDebug);
        org.aspectj.apache.bcel.generic.InstructionList il = mg.getInstructionList();
        if (il != null) {
            org.aspectj.apache.bcel.generic.InstructionHandle ih = il.getStart();
            while (ih != null) {
                ih = ih.getNext();
            }
            if (compute) {
                mg.setMaxStack();
                mg.setMaxLocals();
            }
            if (computeFrames) {
                org.aspectj.apache.bcel.verifier.structurals.ModifiedPass3bVerifier verif = new org.aspectj.apache.bcel.verifier.structurals.ModifiedPass3bVerifier(jc,
                        k);
                verif.do_verify();
            }
        }
        cg.replaceMethod(ms[k], mg.getMethod());
    }
    cg.getJavaClass().getBytes();
}
 
開發者ID:nxmatic,項目名稱:objectweb-asm-4.0,代碼行數:40,代碼來源:ALLPerfTest.java

示例2: nullAspectjBCELAdapt

import org.apache.bcel.verifier.structurals.ModifiedPass3bVerifier; //導入依賴的package包/類
static void nullAspectjBCELAdapt(final byte[] b) throws IOException {
    org.aspectj.apache.bcel.classfile.JavaClass jc = new org.aspectj.apache.bcel.classfile.ClassParser(
            new ByteArrayInputStream(b), "class-name").parse();
    org.aspectj.apache.bcel.generic.ClassGen cg = new org.aspectj.apache.bcel.generic.ClassGen(
            jc);
    org.aspectj.apache.bcel.generic.ConstantPoolGen cp = cg
            .getConstantPool();
    org.aspectj.apache.bcel.classfile.Method[] ms = cg.getMethods();
    for (int k = 0; k < ms.length; ++k) {
        org.aspectj.apache.bcel.generic.MethodGen mg = new org.aspectj.apache.bcel.generic.MethodGen(
                ms[k], cg.getClassName(), cp);
        boolean lv = ms[k].getLocalVariableTable() == null;
        boolean ln = ms[k].getLineNumberTable() == null;
        if (lv) {
            mg.removeLocalVariables();
        }
        if (ln) {
            mg.removeLineNumbers();
        }
        mg.stripAttributes(skipDebug);
        org.aspectj.apache.bcel.generic.InstructionList il = mg
                .getInstructionList();
        if (il != null) {
            org.aspectj.apache.bcel.generic.InstructionHandle ih = il
                    .getStart();
            while (ih != null) {
                ih = ih.getNext();
            }
            if (compute) {
                mg.setMaxStack();
                mg.setMaxLocals();
            }
            if (computeFrames) {
                org.aspectj.apache.bcel.verifier.structurals.ModifiedPass3bVerifier verif = new org.aspectj.apache.bcel.verifier.structurals.ModifiedPass3bVerifier(
                        jc, k);
                verif.do_verify();
            }
        }
        cg.replaceMethod(ms[k], mg.getMethod());
    }
    cg.getJavaClass().getBytes();
}
 
開發者ID:lrytz,項目名稱:asm-legacy-svn-clone,代碼行數:43,代碼來源:ALLPerfTest.java


注:本文中的org.apache.bcel.verifier.structurals.ModifiedPass3bVerifier類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。