⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utf8usagemarker.java

📁 j2me 混淆包,用于混淆j2me的原代码用的
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    public void visitSourceDirAttrInfo(ClassFile classFile, SourceDirAttrInfo sourceDirAttrInfo)    {        markCpUtf8Entry(classFile, sourceDirAttrInfo.u2attrNameIndex);        markCpUtf8Entry(classFile, sourceDirAttrInfo.u2sourceDirIndex);    }    public void visitDeprecatedAttrInfo(ClassFile classFile, DeprecatedAttrInfo deprecatedAttrInfo)    {        markCpUtf8Entry(classFile, deprecatedAttrInfo.u2attrNameIndex);    }    public void visitSyntheticAttrInfo(ClassFile classFile, SyntheticAttrInfo syntheticAttrInfo)    {        markCpUtf8Entry(classFile, syntheticAttrInfo.u2attrNameIndex);    }    public void visitSignatureAttrInfo(ClassFile classFile, SignatureAttrInfo signatureAttrInfo)    {        markCpUtf8Entry(classFile, signatureAttrInfo.u2attrNameIndex);        markCpUtf8Entry(classFile, signatureAttrInfo.u2signatureIndex);    }    public void visitRuntimeVisibleAnnotationAttrInfo(ClassFile classFile, RuntimeVisibleAnnotationsAttrInfo runtimeVisibleAnnotationsAttrInfo)    {        markCpUtf8Entry(classFile, runtimeVisibleAnnotationsAttrInfo.u2attrNameIndex);        // Mark the UTF-8 entries referenced by the annotations.        runtimeVisibleAnnotationsAttrInfo.annotationsAccept(classFile, this);    }    public void visitRuntimeInvisibleAnnotationAttrInfo(ClassFile classFile, RuntimeInvisibleAnnotationsAttrInfo runtimeInvisibleAnnotationsAttrInfo)    {        markCpUtf8Entry(classFile, runtimeInvisibleAnnotationsAttrInfo.u2attrNameIndex);        // Mark the UTF-8 entries referenced by the annotations.        runtimeInvisibleAnnotationsAttrInfo.annotationsAccept(classFile, this);    }    public void visitRuntimeVisibleParameterAnnotationAttrInfo(ClassFile classFile, RuntimeVisibleParameterAnnotationsAttrInfo runtimeVisibleParameterAnnotationsAttrInfo)    {        markCpUtf8Entry(classFile, runtimeVisibleParameterAnnotationsAttrInfo.u2attrNameIndex);        // Mark the UTF-8 entries referenced by the annotations.        runtimeVisibleParameterAnnotationsAttrInfo.annotationsAccept(classFile, this);    }    public void visitRuntimeInvisibleParameterAnnotationAttrInfo(ClassFile classFile, RuntimeInvisibleParameterAnnotationsAttrInfo runtimeInvisibleParameterAnnotationsAttrInfo)    {        markCpUtf8Entry(classFile, runtimeInvisibleParameterAnnotationsAttrInfo.u2attrNameIndex);        // Mark the UTF-8 entries referenced by the annotations.        runtimeInvisibleParameterAnnotationsAttrInfo.annotationsAccept(classFile, this);    }    public void visitAnnotationDefaultAttrInfo(ClassFile classFile, AnnotationDefaultAttrInfo annotationDefaultAttrInfo)    {        markCpUtf8Entry(classFile, annotationDefaultAttrInfo.u2attrNameIndex);        // Mark the UTF-8 entries referenced by the element value.        annotationDefaultAttrInfo.defaultValueAccept(classFile, this);    }    // Implementations for InnerClassesInfoVisitor.    public void visitInnerClassesInfo(ClassFile classFile, InnerClassesInfo innerClassesInfo)    {        if (innerClassesInfo.u2innerNameIndex != 0)        {            markCpUtf8Entry(classFile, innerClassesInfo.u2innerNameIndex);        }    }    // Implementations for LocalVariableInfoVisitor.    public void visitLocalVariableInfo(ClassFile classFile, MethodInfo methodInfo, CodeAttrInfo codeAttrInfo, LocalVariableInfo localVariableInfo)    {        markCpUtf8Entry(classFile, localVariableInfo.u2nameIndex);        markCpUtf8Entry(classFile, localVariableInfo.u2descriptorIndex);    }    // Implementations for LocalVariableTypeInfoVisitor.    public void visitLocalVariableTypeInfo(ClassFile classFile, MethodInfo methodInfo, CodeAttrInfo codeAttrInfo, LocalVariableTypeInfo localVariableTypeInfo)    {        markCpUtf8Entry(classFile, localVariableTypeInfo.u2nameIndex);        markCpUtf8Entry(classFile, localVariableTypeInfo.u2signatureIndex);    }    // Implementations for AnnotationVisitor.    public void visitAnnotation(ClassFile classFile, Annotation annotation)    {        markCpUtf8Entry(classFile, annotation.u2typeIndex);        // Mark the UTF-8 entries referenced by the element values.        annotation.elementValuesAccept(classFile, this);    }    // Implementations for ElementValueVisitor.    public void visitConstantElementValue(ClassFile classFile, Annotation annotation, ConstantElementValue constantElementValue)    {        if (constantElementValue.u2elementName != 0)        {            markCpUtf8Entry(classFile, constantElementValue.u2elementName);        }        // Only the string constant element value refers to a UTF-8 entry.        if (constantElementValue.u1tag == ClassConstants.ELEMENT_VALUE_STRING_CONSTANT)        {            markCpUtf8Entry(classFile, constantElementValue.u2constantValueIndex);        }    }    public void visitEnumConstantElementValue(ClassFile classFile, Annotation annotation, EnumConstantElementValue enumConstantElementValue)    {        if (enumConstantElementValue.u2elementName != 0)        {            markCpUtf8Entry(classFile, enumConstantElementValue.u2elementName);        }        markCpUtf8Entry(classFile, enumConstantElementValue.u2typeNameIndex);        markCpUtf8Entry(classFile, enumConstantElementValue.u2constantNameIndex);    }    public void visitClassElementValue(ClassFile classFile, Annotation annotation, ClassElementValue classElementValue)    {        if (classElementValue.u2elementName != 0)        {            markCpUtf8Entry(classFile, classElementValue.u2elementName);        }        markCpUtf8Entry(classFile, classElementValue.u2classInfoIndex);    }    public void visitAnnotationElementValue(ClassFile classFile, Annotation annotation, AnnotationElementValue annotationElementValue)    {        if (annotationElementValue.u2elementName != 0)        {            markCpUtf8Entry(classFile, annotationElementValue.u2elementName);        }        // Mark the UTF-8 entries referenced by the annotation.        annotationElementValue.annotationAccept(classFile, this);    }    public void visitArrayElementValue(ClassFile classFile, Annotation annotation, ArrayElementValue arrayElementValue)    {        if (arrayElementValue.u2elementName != 0)        {            markCpUtf8Entry(classFile, arrayElementValue.u2elementName);        }        // Mark the UTF-8 entries referenced by the element values.        arrayElementValue.elementValuesAccept(classFile, annotation, this);    }    // Small utility methods.    /**     * Marks the given UTF-8 constant pool entry of the given class.     */    private void markCpUtf8Entry(ClassFile classFile, int index)    {         markAsUsed((Utf8CpInfo)((ProgramClassFile)classFile).getCpEntry(index));    }    /**     * Marks the given VisitorAccepter as being used.     * In this context, the VisitorAccepter will be a Utf8CpInfo object.     */    private static void markAsUsed(VisitorAccepter visitorAccepter)    {        visitorAccepter.setVisitorInfo(USED);    }    /**     * Returns whether the given VisitorAccepter has been marked as being used.     * In this context, the VisitorAccepter will be a Utf8CpInfo object.     */    static boolean isUsed(VisitorAccepter visitorAccepter)    {        return visitorAccepter.getVisitorInfo() == USED;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -