Initial commit
This commit is contained in:
commit
fd9bc87c00
|
@ -0,0 +1,2 @@
|
|||
out
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
# Default ignored files
|
||||
/workspace.xml
|
|
@ -0,0 +1,5 @@
|
|||
<component name="ProjectCodeStyleConfiguration">
|
||||
<state>
|
||||
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
|
||||
</state>
|
||||
</component>
|
|
@ -0,0 +1,19 @@
|
|||
<component name="libraryTable">
|
||||
<library name="asm-7.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-util-7.1.jar!/" />
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-tree-7.1.jar!/" />
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-7.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-7.1-javadoc.jar!/" />
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-util-7.1-javadoc.jar!/" />
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-tree-7.1-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-util-7.1-sources.jar!/" />
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-tree-7.1-sources.jar!/" />
|
||||
<root url="jar://$PROJECT_DIR$/lib/asm-7.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ASMPluginConfiguration">
|
||||
<asm skipDebug="false" skipFrames="false" skipCode="false" expandFrames="false" />
|
||||
<groovy codeStyle="LEGACY" />
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="10" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/starter-lab-02-simple-bytecode-metrics.iml" filepath="$PROJECT_DIR$/starter-lab-02-simple-bytecode-metrics.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,5 @@
|
|||
|
||||
9
|
||||
README.md,8/e/8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d
|
||||
A
|
||||
src/Analyzer.java,0/b/0b96f4b9af2dc03180ffa9b36f0b5aaa1c0fdf6d
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,31 @@
|
|||
# Lab 2 - Software Performance 2023
|
||||
|
||||
This is Lab 2 of the **Software Performance** course at USI.
|
||||
|
||||
Go to [this Lab on iCorsi](https://www.icorsi.ch/course/view.php?id=16963).
|
||||
|
||||
## Submission Info
|
||||
|
||||
Property | Value
|
||||
------------ | -------------
|
||||
First Name | ...
|
||||
Last Name | ...
|
||||
|
||||
## Submission Checklist
|
||||
|
||||
Please complete this checklist (turn [ ] into [X]) before you submit:
|
||||
|
||||
- [ ] I completed the above Submission Info
|
||||
- [ ] I built the project in IntelliJ (Build > Build Project)
|
||||
- [ ] I ran test/test.sh and verified that it runs (and fails)
|
||||
- [ ] I implemented the analysis in src/Analyzer.java, outputting:
|
||||
- [ ] Number of classes (incl. interfaces and enums)
|
||||
- [ ] Number of concrete non-native, non-abstract methods (methods with code)
|
||||
- [ ] Total number of instructions (ignoring instructions with opcode -1)
|
||||
- [ ] Total number of instructions by opcode (ignoring instructions with opcode -1)
|
||||
- [ ] Total number of method invocation instructions (== call sites)
|
||||
- [ ] Total number of conditional branch instructions (excluding GOTO, but including multi-way branches)
|
||||
- [ ] I wrote the source code myself and did not look at the source code of my classmates
|
||||
- [ ] I ran test/test.sh and verified that it runs and passes
|
||||
- [ ] I committed my changes (at least one commit, but possibly many)
|
||||
- [ ] I pushed my commits to GitHub
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,60 @@
|
|||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.Enumeration;
|
||||
import java.util.List;
|
||||
import java.util.jar.JarEntry;
|
||||
import java.util.jar.JarFile;
|
||||
|
||||
import org.objectweb.asm.ClassReader;
|
||||
import org.objectweb.asm.tree.ClassNode;
|
||||
import org.objectweb.asm.tree.MethodNode;
|
||||
|
||||
|
||||
public class Analyzer {
|
||||
|
||||
// TODO add data structure to keep statistics
|
||||
|
||||
public static void main(final String[] args) throws IOException {
|
||||
final String jarFileName = args[0];
|
||||
System.out.println("Analyzing "+jarFileName);
|
||||
final JarFile jar = new JarFile(jarFileName);
|
||||
analyzeJar(jar);
|
||||
// TODO output statistics
|
||||
}
|
||||
|
||||
private static void analyzeJar(final JarFile jar) throws IOException {
|
||||
final Enumeration<JarEntry> entries = jar.entries();
|
||||
while (entries.hasMoreElements()) {
|
||||
final JarEntry entry = entries.nextElement();
|
||||
analyzeJarEntry(entry, jar);
|
||||
}
|
||||
}
|
||||
|
||||
private static void analyzeJarEntry(final JarEntry entry, final JarFile jar) throws IOException {
|
||||
if (!entry.isDirectory() && entry.getName().endsWith(".class")) {
|
||||
System.out.println(" File "+entry.getName());
|
||||
final InputStream is = jar.getInputStream(entry);
|
||||
final ClassReader classReader = new ClassReader(is);
|
||||
final ClassNode classNode = new ClassNode();
|
||||
classReader.accept(classNode, ClassReader.SKIP_FRAMES);
|
||||
analyzeClass(classNode);
|
||||
}
|
||||
}
|
||||
|
||||
private static void analyzeClass(final ClassNode classNode) {
|
||||
System.out.println(" Class "+classNode.name);
|
||||
final List<MethodNode> methods = classNode.methods;
|
||||
for (final MethodNode methodNode : methods) {
|
||||
analyzeMethod(methodNode);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private static void analyzeMethod(final MethodNode methodNode) {
|
||||
System.out.println(" Method "+methodNode.name+methodNode.desc);
|
||||
// TODO implement required analysis
|
||||
}
|
||||
|
||||
// TODO possibly add extra methods (adding classes is fine, too)
|
||||
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="asm-7.1" level="project" />
|
||||
</component>
|
||||
</module>
|
Binary file not shown.
|
@ -0,0 +1,842 @@
|
|||
Analyzing asm-6.2.1.jar
|
||||
File module-info.class
|
||||
Class module-info
|
||||
File org/objectweb/asm/AnnotationVisitor.class
|
||||
Class org/objectweb/asm/AnnotationVisitor
|
||||
Method <init>(I)V
|
||||
Method <init>(ILorg/objectweb/asm/AnnotationVisitor;)V
|
||||
Method visit(Ljava/lang/String;Ljava/lang/Object;)V
|
||||
Method visitEnum(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitAnnotation(Ljava/lang/String;Ljava/lang/String;)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitArray(Ljava/lang/String;)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitEnd()V
|
||||
File org/objectweb/asm/AnnotationWriter.class
|
||||
Class org/objectweb/asm/AnnotationWriter
|
||||
Method <init>(Lorg/objectweb/asm/SymbolTable;ZLorg/objectweb/asm/ByteVector;Lorg/objectweb/asm/AnnotationWriter;)V
|
||||
Method <init>(Lorg/objectweb/asm/SymbolTable;Lorg/objectweb/asm/ByteVector;Lorg/objectweb/asm/AnnotationWriter;)V
|
||||
Method visit(Ljava/lang/String;Ljava/lang/Object;)V
|
||||
Method visitEnum(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitAnnotation(Ljava/lang/String;Ljava/lang/String;)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitArray(Ljava/lang/String;)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitEnd()V
|
||||
Method computeAnnotationsSize(Ljava/lang/String;)I
|
||||
Method putAnnotations(ILorg/objectweb/asm/ByteVector;)V
|
||||
Method computeParameterAnnotationsSize(Ljava/lang/String;[Lorg/objectweb/asm/AnnotationWriter;I)I
|
||||
Method putParameterAnnotations(I[Lorg/objectweb/asm/AnnotationWriter;ILorg/objectweb/asm/ByteVector;)V
|
||||
File org/objectweb/asm/Attribute$Set.class
|
||||
Class org/objectweb/asm/Attribute$Set
|
||||
Method <init>()V
|
||||
Method addAttributes(Lorg/objectweb/asm/Attribute;)V
|
||||
Method toArray()[Lorg/objectweb/asm/Attribute;
|
||||
Method contains(Lorg/objectweb/asm/Attribute;)Z
|
||||
Method add(Lorg/objectweb/asm/Attribute;)V
|
||||
File org/objectweb/asm/Attribute.class
|
||||
Class org/objectweb/asm/Attribute
|
||||
Method <init>(Ljava/lang/String;)V
|
||||
Method isUnknown()Z
|
||||
Method isCodeAttribute()Z
|
||||
Method getLabels()[Lorg/objectweb/asm/Label;
|
||||
Method read(Lorg/objectweb/asm/ClassReader;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
|
||||
Method write(Lorg/objectweb/asm/ClassWriter;[BIII)Lorg/objectweb/asm/ByteVector;
|
||||
Method getAttributeCount()I
|
||||
Method computeAttributesSize(Lorg/objectweb/asm/SymbolTable;)I
|
||||
Method computeAttributesSize(Lorg/objectweb/asm/SymbolTable;[BIII)I
|
||||
Method putAttributes(Lorg/objectweb/asm/SymbolTable;Lorg/objectweb/asm/ByteVector;)V
|
||||
Method putAttributes(Lorg/objectweb/asm/SymbolTable;[BIIILorg/objectweb/asm/ByteVector;)V
|
||||
File org/objectweb/asm/ByteVector.class
|
||||
Class org/objectweb/asm/ByteVector
|
||||
Method <init>()V
|
||||
Method <init>(I)V
|
||||
Method <init>([B)V
|
||||
Method putByte(I)Lorg/objectweb/asm/ByteVector;
|
||||
Method put11(II)Lorg/objectweb/asm/ByteVector;
|
||||
Method putShort(I)Lorg/objectweb/asm/ByteVector;
|
||||
Method put12(II)Lorg/objectweb/asm/ByteVector;
|
||||
Method put112(III)Lorg/objectweb/asm/ByteVector;
|
||||
Method putInt(I)Lorg/objectweb/asm/ByteVector;
|
||||
Method put122(III)Lorg/objectweb/asm/ByteVector;
|
||||
Method putLong(J)Lorg/objectweb/asm/ByteVector;
|
||||
Method putUTF8(Ljava/lang/String;)Lorg/objectweb/asm/ByteVector;
|
||||
Method encodeUTF8(Ljava/lang/String;II)Lorg/objectweb/asm/ByteVector;
|
||||
Method putByteArray([BII)Lorg/objectweb/asm/ByteVector;
|
||||
Method enlarge(I)V
|
||||
File org/objectweb/asm/ClassReader.class
|
||||
Class org/objectweb/asm/ClassReader
|
||||
Method <init>([B)V
|
||||
Method <init>([BII)V
|
||||
Method <init>([BIZ)V
|
||||
Method <init>(Ljava/io/InputStream;)V
|
||||
Method <init>(Ljava/lang/String;)V
|
||||
Method readStream(Ljava/io/InputStream;Z)[B
|
||||
Method getAccess()I
|
||||
Method getClassName()Ljava/lang/String;
|
||||
Method getSuperName()Ljava/lang/String;
|
||||
Method getInterfaces()[Ljava/lang/String;
|
||||
Method accept(Lorg/objectweb/asm/ClassVisitor;I)V
|
||||
Method accept(Lorg/objectweb/asm/ClassVisitor;[Lorg/objectweb/asm/Attribute;I)V
|
||||
Method readModule(Lorg/objectweb/asm/ClassVisitor;Lorg/objectweb/asm/Context;IILjava/lang/String;)V
|
||||
Method readField(Lorg/objectweb/asm/ClassVisitor;Lorg/objectweb/asm/Context;I)I
|
||||
Method readMethod(Lorg/objectweb/asm/ClassVisitor;Lorg/objectweb/asm/Context;I)I
|
||||
Method readCode(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;I)V
|
||||
Method readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
|
||||
Method createLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
|
||||
Method createDebugLabel(I[Lorg/objectweb/asm/Label;)V
|
||||
Method readTypeAnnotations(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;IZ)[I
|
||||
Method getTypeAnnotationBytecodeOffset([II)I
|
||||
Method readTypeAnnotationTarget(Lorg/objectweb/asm/Context;I)I
|
||||
Method readParameterAnnotations(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;IZ)V
|
||||
Method readElementValues(Lorg/objectweb/asm/AnnotationVisitor;IZ[C)I
|
||||
Method readElementValue(Lorg/objectweb/asm/AnnotationVisitor;ILjava/lang/String;[C)I
|
||||
Method computeImplicitFrame(Lorg/objectweb/asm/Context;)V
|
||||
Method readStackMapFrame(IZZLorg/objectweb/asm/Context;)I
|
||||
Method readVerificationTypeInfo(I[Ljava/lang/Object;I[C[Lorg/objectweb/asm/Label;)I
|
||||
Method getFirstAttributeOffset()I
|
||||
Method readAttribute([Lorg/objectweb/asm/Attribute;Ljava/lang/String;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
|
||||
Method getItemCount()I
|
||||
Method getItem(I)I
|
||||
Method getMaxStringLength()I
|
||||
Method readByte(I)I
|
||||
Method readUnsignedShort(I)I
|
||||
Method readShort(I)S
|
||||
Method readInt(I)I
|
||||
Method readLong(I)J
|
||||
Method readUTF8(I[C)Ljava/lang/String;
|
||||
Method readUTF(I[C)Ljava/lang/String;
|
||||
Method readUTF(II[C)Ljava/lang/String;
|
||||
Method readStringish(I[C)Ljava/lang/String;
|
||||
Method readClass(I[C)Ljava/lang/String;
|
||||
Method readModule(I[C)Ljava/lang/String;
|
||||
Method readPackage(I[C)Ljava/lang/String;
|
||||
Method readConstantDynamic(I[C)Lorg/objectweb/asm/ConstantDynamic;
|
||||
Method readConst(I[C)Ljava/lang/Object;
|
||||
File org/objectweb/asm/ClassTooLargeException.class
|
||||
Class org/objectweb/asm/ClassTooLargeException
|
||||
Method <init>(Ljava/lang/String;I)V
|
||||
Method getClassName()Ljava/lang/String;
|
||||
Method getConstantPoolCount()I
|
||||
File org/objectweb/asm/ClassVisitor.class
|
||||
Class org/objectweb/asm/ClassVisitor
|
||||
Method <init>(I)V
|
||||
Method <init>(ILorg/objectweb/asm/ClassVisitor;)V
|
||||
Method visit(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
|
||||
Method visitSource(Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitModule(Ljava/lang/String;ILjava/lang/String;)Lorg/objectweb/asm/ModuleVisitor;
|
||||
Method visitNestHostExperimental(Ljava/lang/String;)V
|
||||
Method visitOuterClass(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAttribute(Lorg/objectweb/asm/Attribute;)V
|
||||
Method visitNestMemberExperimental(Ljava/lang/String;)V
|
||||
Method visitInnerClass(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
|
||||
Method visitField(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Lorg/objectweb/asm/FieldVisitor;
|
||||
Method visitMethod(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Lorg/objectweb/asm/MethodVisitor;
|
||||
Method visitEnd()V
|
||||
File org/objectweb/asm/ClassWriter.class
|
||||
Class org/objectweb/asm/ClassWriter
|
||||
Method <init>(I)V
|
||||
Method <init>(Lorg/objectweb/asm/ClassReader;I)V
|
||||
Method visit(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
|
||||
Method visitSource(Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitModule(Ljava/lang/String;ILjava/lang/String;)Lorg/objectweb/asm/ModuleVisitor;
|
||||
Method visitNestHostExperimental(Ljava/lang/String;)V
|
||||
Method visitOuterClass(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAttribute(Lorg/objectweb/asm/Attribute;)V
|
||||
Method visitNestMemberExperimental(Ljava/lang/String;)V
|
||||
Method visitInnerClass(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
|
||||
Method visitField(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Lorg/objectweb/asm/FieldVisitor;
|
||||
Method visitMethod(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Lorg/objectweb/asm/MethodVisitor;
|
||||
Method visitEnd()V
|
||||
Method toByteArray()[B
|
||||
Method replaceAsmInstructions([BZ)[B
|
||||
Method getAttributePrototypes()[Lorg/objectweb/asm/Attribute;
|
||||
Method newConst(Ljava/lang/Object;)I
|
||||
Method newUTF8(Ljava/lang/String;)I
|
||||
Method newClass(Ljava/lang/String;)I
|
||||
Method newMethodType(Ljava/lang/String;)I
|
||||
Method newModule(Ljava/lang/String;)I
|
||||
Method newPackage(Ljava/lang/String;)I
|
||||
Method newHandle(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
|
||||
Method newHandle(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)I
|
||||
Method newConstantDynamic(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)I
|
||||
Method newInvokeDynamic(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)I
|
||||
Method newField(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
|
||||
Method newMethod(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)I
|
||||
Method newNameType(Ljava/lang/String;Ljava/lang/String;)I
|
||||
Method getCommonSuperClass(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
|
||||
Method getClassLoader()Ljava/lang/ClassLoader;
|
||||
File org/objectweb/asm/ConstantDynamic.class
|
||||
Class org/objectweb/asm/ConstantDynamic
|
||||
Method <init>(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
|
||||
Method getName()Ljava/lang/String;
|
||||
Method getDescriptor()Ljava/lang/String;
|
||||
Method getBootstrapMethod()Lorg/objectweb/asm/Handle;
|
||||
Method getBootstrapMethodArguments()[Ljava/lang/Object;
|
||||
Method equals(Ljava/lang/Object;)Z
|
||||
Method hashCode()I
|
||||
Method toString()Ljava/lang/String;
|
||||
File org/objectweb/asm/Constants.class
|
||||
Class org/objectweb/asm/Constants
|
||||
Method <init>()V
|
||||
File org/objectweb/asm/Context.class
|
||||
Class org/objectweb/asm/Context
|
||||
Method <init>()V
|
||||
File org/objectweb/asm/CurrentFrame.class
|
||||
Class org/objectweb/asm/CurrentFrame
|
||||
Method <init>(Lorg/objectweb/asm/Label;)V
|
||||
Method execute(IILorg/objectweb/asm/Symbol;Lorg/objectweb/asm/SymbolTable;)V
|
||||
File org/objectweb/asm/Edge.class
|
||||
Class org/objectweb/asm/Edge
|
||||
Method <init>(ILorg/objectweb/asm/Label;Lorg/objectweb/asm/Edge;)V
|
||||
File org/objectweb/asm/FieldVisitor.class
|
||||
Class org/objectweb/asm/FieldVisitor
|
||||
Method <init>(I)V
|
||||
Method <init>(ILorg/objectweb/asm/FieldVisitor;)V
|
||||
Method visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAttribute(Lorg/objectweb/asm/Attribute;)V
|
||||
Method visitEnd()V
|
||||
File org/objectweb/asm/FieldWriter.class
|
||||
Class org/objectweb/asm/FieldWriter
|
||||
Method <init>(Lorg/objectweb/asm/SymbolTable;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
|
||||
Method visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAttribute(Lorg/objectweb/asm/Attribute;)V
|
||||
Method visitEnd()V
|
||||
Method computeFieldInfoSize()I
|
||||
Method putFieldInfo(Lorg/objectweb/asm/ByteVector;)V
|
||||
Method collectAttributePrototypes(Lorg/objectweb/asm/Attribute$Set;)V
|
||||
File org/objectweb/asm/Frame.class
|
||||
Class org/objectweb/asm/Frame
|
||||
Method getAbstractTypeFromApiFormat(Lorg/objectweb/asm/SymbolTable;Ljava/lang/Object;)I
|
||||
Method getAbstractTypeFromInternalName(Lorg/objectweb/asm/SymbolTable;Ljava/lang/String;)I
|
||||
Method getAbstractTypeFromDescriptor(Lorg/objectweb/asm/SymbolTable;Ljava/lang/String;I)I
|
||||
Method <init>(Lorg/objectweb/asm/Label;)V
|
||||
Method copyFrom(Lorg/objectweb/asm/Frame;)V
|
||||
Method setInputFrameFromDescriptor(Lorg/objectweb/asm/SymbolTable;ILjava/lang/String;I)V
|
||||
Method setInputFrameFromApiFormat(Lorg/objectweb/asm/SymbolTable;I[Ljava/lang/Object;I[Ljava/lang/Object;)V
|
||||
Method getInputStackSize()I
|
||||
Method getLocal(I)I
|
||||
Method setLocal(II)V
|
||||
Method push(I)V
|
||||
Method push(Lorg/objectweb/asm/SymbolTable;Ljava/lang/String;)V
|
||||
Method pop()I
|
||||
Method pop(I)V
|
||||
Method pop(Ljava/lang/String;)V
|
||||
Method addInitializedType(I)V
|
||||
Method getInitializedType(Lorg/objectweb/asm/SymbolTable;I)I
|
||||
Method execute(IILorg/objectweb/asm/Symbol;Lorg/objectweb/asm/SymbolTable;)V
|
||||
Method merge(Lorg/objectweb/asm/SymbolTable;Lorg/objectweb/asm/Frame;I)Z
|
||||
Method merge(Lorg/objectweb/asm/SymbolTable;I[II)Z
|
||||
Method accept(Lorg/objectweb/asm/MethodWriter;)V
|
||||
Method putAbstractType(Lorg/objectweb/asm/SymbolTable;ILorg/objectweb/asm/ByteVector;)V
|
||||
File org/objectweb/asm/Handle.class
|
||||
Class org/objectweb/asm/Handle
|
||||
Method <init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method <init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
|
||||
Method getTag()I
|
||||
Method getOwner()Ljava/lang/String;
|
||||
Method getName()Ljava/lang/String;
|
||||
Method getDesc()Ljava/lang/String;
|
||||
Method isInterface()Z
|
||||
Method equals(Ljava/lang/Object;)Z
|
||||
Method hashCode()I
|
||||
Method toString()Ljava/lang/String;
|
||||
File org/objectweb/asm/Handler.class
|
||||
Class org/objectweb/asm/Handler
|
||||
Method <init>(Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;ILjava/lang/String;)V
|
||||
Method <init>(Lorg/objectweb/asm/Handler;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;)V
|
||||
Method removeRange(Lorg/objectweb/asm/Handler;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Handler;
|
||||
Method getExceptionTableLength(Lorg/objectweb/asm/Handler;)I
|
||||
Method getExceptionTableSize(Lorg/objectweb/asm/Handler;)I
|
||||
Method putExceptionTable(Lorg/objectweb/asm/Handler;Lorg/objectweb/asm/ByteVector;)V
|
||||
File org/objectweb/asm/Label.class
|
||||
Class org/objectweb/asm/Label
|
||||
Method <init>()V
|
||||
Method getOffset()I
|
||||
Method getCanonicalInstance()Lorg/objectweb/asm/Label;
|
||||
Method addLineNumber(I)V
|
||||
Method accept(Lorg/objectweb/asm/MethodVisitor;Z)V
|
||||
Method put(Lorg/objectweb/asm/ByteVector;IZ)V
|
||||
Method addForwardReference(III)V
|
||||
Method resolve([BI)Z
|
||||
Method markSubroutine(S)V
|
||||
Method addSubroutineRetSuccessors(Lorg/objectweb/asm/Label;)V
|
||||
Method pushSuccessors(Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
|
||||
Method toString()Ljava/lang/String;
|
||||
Method <clinit>()V
|
||||
File org/objectweb/asm/MethodTooLargeException.class
|
||||
Class org/objectweb/asm/MethodTooLargeException
|
||||
Method <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
|
||||
Method getClassName()Ljava/lang/String;
|
||||
Method getMethodName()Ljava/lang/String;
|
||||
Method getDescriptor()Ljava/lang/String;
|
||||
Method getCodeSize()I
|
||||
File org/objectweb/asm/MethodVisitor.class
|
||||
Class org/objectweb/asm/MethodVisitor
|
||||
Method <init>(I)V
|
||||
Method <init>(ILorg/objectweb/asm/MethodVisitor;)V
|
||||
Method visitParameter(Ljava/lang/String;I)V
|
||||
Method visitAnnotationDefault()Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAnnotableParameterCount(IZ)V
|
||||
Method visitParameterAnnotation(ILjava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAttribute(Lorg/objectweb/asm/Attribute;)V
|
||||
Method visitCode()V
|
||||
Method visitFrame(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
|
||||
Method visitInsn(I)V
|
||||
Method visitIntInsn(II)V
|
||||
Method visitVarInsn(II)V
|
||||
Method visitTypeInsn(ILjava/lang/String;)V
|
||||
Method visitFieldInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
|
||||
Method visitInvokeDynamicInsn(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
|
||||
Method visitJumpInsn(ILorg/objectweb/asm/Label;)V
|
||||
Method visitLabel(Lorg/objectweb/asm/Label;)V
|
||||
Method visitLdcInsn(Ljava/lang/Object;)V
|
||||
Method visitIincInsn(II)V
|
||||
Method visitTableSwitchInsn(IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
|
||||
Method visitLookupSwitchInsn(Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
|
||||
Method visitMultiANewArrayInsn(Ljava/lang/String;I)V
|
||||
Method visitInsnAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitTryCatchBlock(Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Ljava/lang/String;)V
|
||||
Method visitTryCatchAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitLocalVariable(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;I)V
|
||||
Method visitLocalVariableAnnotation(ILorg/objectweb/asm/TypePath;[Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;[ILjava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitLineNumber(ILorg/objectweb/asm/Label;)V
|
||||
Method visitMaxs(II)V
|
||||
Method visitEnd()V
|
||||
File org/objectweb/asm/MethodWriter.class
|
||||
Class org/objectweb/asm/MethodWriter
|
||||
Method <init>(Lorg/objectweb/asm/SymbolTable;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;I)V
|
||||
Method hasFrames()Z
|
||||
Method hasAsmInstructions()Z
|
||||
Method visitParameter(Ljava/lang/String;I)V
|
||||
Method visitAnnotationDefault()Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAnnotableParameterCount(IZ)V
|
||||
Method visitParameterAnnotation(ILjava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitAttribute(Lorg/objectweb/asm/Attribute;)V
|
||||
Method visitCode()V
|
||||
Method visitFrame(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
|
||||
Method visitInsn(I)V
|
||||
Method visitIntInsn(II)V
|
||||
Method visitVarInsn(II)V
|
||||
Method visitTypeInsn(ILjava/lang/String;)V
|
||||
Method visitFieldInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
|
||||
Method visitInvokeDynamicInsn(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
|
||||
Method visitJumpInsn(ILorg/objectweb/asm/Label;)V
|
||||
Method visitLabel(Lorg/objectweb/asm/Label;)V
|
||||
Method visitLdcInsn(Ljava/lang/Object;)V
|
||||
Method visitIincInsn(II)V
|
||||
Method visitTableSwitchInsn(IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
|
||||
Method visitLookupSwitchInsn(Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
|
||||
Method visitSwitchInsn(Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
|
||||
Method visitMultiANewArrayInsn(Ljava/lang/String;I)V
|
||||
Method visitInsnAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitTryCatchBlock(Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Ljava/lang/String;)V
|
||||
Method visitTryCatchAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitLocalVariable(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;I)V
|
||||
Method visitLocalVariableAnnotation(ILorg/objectweb/asm/TypePath;[Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;[ILjava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
|
||||
Method visitLineNumber(ILorg/objectweb/asm/Label;)V
|
||||
Method visitMaxs(II)V
|
||||
Method computeAllFrames()V
|
||||
Method computeMaxStackAndLocal()V
|
||||
Method visitEnd()V
|
||||
Method addSuccessorToCurrentBasicBlock(ILorg/objectweb/asm/Label;)V
|
||||
Method endCurrentBasicBlockWithNoSuccessor()V
|
||||
Method visitFrameStart(III)I
|
||||
Method visitAbstractType(II)V
|
||||
Method visitFrameEnd()V
|
||||
Method putFrame()V
|
||||
Method putAbstractTypes(II)V
|
||||
Method putFrameType(Ljava/lang/Object;)V
|
||||
Method canCopyMethodAttributes(Lorg/objectweb/asm/ClassReader;IIZZIII)Z
|
||||
Method computeMethodInfoSize()I
|
||||
Method putMethodInfo(Lorg/objectweb/asm/ByteVector;)V
|
||||
Method collectAttributePrototypes(Lorg/objectweb/asm/Attribute$Set;)V
|
||||
Method <clinit>()V
|
||||
File org/objectweb/asm/ModuleVisitor.class
|
||||
Class org/objectweb/asm/ModuleVisitor
|
||||
Method <init>(I)V
|
||||
Method <init>(ILorg/objectweb/asm/ModuleVisitor;)V
|
||||
Method visitMainClass(Ljava/lang/String;)V
|
||||
Method visitPackage(Ljava/lang/String;)V
|
||||
Method visitRequire(Ljava/lang/String;ILjava/lang/String;)V
|
||||
Method visitExport(Ljava/lang/String;I[Ljava/lang/String;)V
|
||||
Method visitOpen(Ljava/lang/String;I[Ljava/lang/String;)V
|
||||
Method visitUse(Ljava/lang/String;)V
|
||||
Method visitProvide(Ljava/lang/String;[Ljava/lang/String;)V
|
||||
Method visitEnd()V
|
||||
File org/objectweb/asm/ModuleWriter.class
|
||||
Class org/objectweb/asm/ModuleWriter
|
||||
Method <init>(Lorg/objectweb/asm/SymbolTable;III)V
|
||||
Method visitMainClass(Ljava/lang/String;)V
|
||||
Method visitPackage(Ljava/lang/String;)V
|
||||
Method visitRequire(Ljava/lang/String;ILjava/lang/String;)V
|
||||
Method visitExport(Ljava/lang/String;I[Ljava/lang/String;)V
|
||||
Method visitOpen(Ljava/lang/String;I[Ljava/lang/String;)V
|
||||
Method visitUse(Ljava/lang/String;)V
|
||||
Method visitProvide(Ljava/lang/String;[Ljava/lang/String;)V
|
||||
Method visitEnd()V
|
||||
Method getAttributeCount()I
|
||||
Method computeAttributesSize()I
|
||||
Method putAttributes(Lorg/objectweb/asm/ByteVector;)V
|
||||
File org/objectweb/asm/Opcodes.class
|
||||
Class org/objectweb/asm/Opcodes
|
||||
Method <clinit>()V
|
||||
File org/objectweb/asm/Symbol.class
|
||||
Class org/objectweb/asm/Symbol
|
||||
Method <init>(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V
|
||||
Method getArgumentsAndReturnSizes()I
|
||||
File org/objectweb/asm/SymbolTable$Entry.class
|
||||
Class org/objectweb/asm/SymbolTable$Entry
|
||||
Method <init>(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;JI)V
|
||||
Method <init>(IILjava/lang/String;I)V
|
||||
Method <init>(IILjava/lang/String;JI)V
|
||||
Method <init>(IILjava/lang/String;Ljava/lang/String;I)V
|
||||
Method <init>(IIJI)V
|
||||
File org/objectweb/asm/SymbolTable.class
|
||||
Class org/objectweb/asm/SymbolTable
|
||||
Method <init>(Lorg/objectweb/asm/ClassWriter;)V
|
||||
Method <init>(Lorg/objectweb/asm/ClassWriter;Lorg/objectweb/asm/ClassReader;)V
|
||||
Method getSource()Lorg/objectweb/asm/ClassReader;
|
||||
Method getMajorVersion()I
|
||||
Method getClassName()Ljava/lang/String;
|
||||
Method setMajorVersionAndClassName(ILjava/lang/String;)I
|
||||
Method getConstantPoolCount()I
|
||||
Method getConstantPoolLength()I
|
||||
Method putConstantPool(Lorg/objectweb/asm/ByteVector;)V
|
||||
Method computeBootstrapMethodsSize()I
|
||||
Method putBootstrapMethods(Lorg/objectweb/asm/ByteVector;)V
|
||||
Method get(I)Lorg/objectweb/asm/SymbolTable$Entry;
|
||||
Method put(Lorg/objectweb/asm/SymbolTable$Entry;)Lorg/objectweb/asm/SymbolTable$Entry;
|
||||
Method add(Lorg/objectweb/asm/SymbolTable$Entry;)V
|
||||
Method addConstant(Ljava/lang/Object;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantClass(Ljava/lang/String;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantFieldref(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantMethodref(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantMemberReference(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/objectweb/asm/SymbolTable$Entry;
|
||||
Method addConstantMemberReference(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method addConstantString(Ljava/lang/String;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantInteger(I)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantFloat(F)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantInteger(II)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantInteger(III)V
|
||||
Method addConstantLong(J)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantDouble(D)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantLong(IJ)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantLong(IIJ)V
|
||||
Method addConstantNameAndType(Ljava/lang/String;Ljava/lang/String;)I
|
||||
Method addConstantNameAndType(ILjava/lang/String;Ljava/lang/String;)V
|
||||
Method addConstantUtf8(Ljava/lang/String;)I
|
||||
Method addConstantUtf8(ILjava/lang/String;)V
|
||||
Method addConstantMethodHandle(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantMethodHandle(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
Method addConstantMethodType(Ljava/lang/String;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantDynamic(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantInvokeDynamic(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantDynamicOrInvokeDynamicReference(ILjava/lang/String;Ljava/lang/String;I)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantDynamicOrInvokeDynamicReference(IILjava/lang/String;Ljava/lang/String;I)V
|
||||
Method addConstantModule(Ljava/lang/String;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantPackage(Ljava/lang/String;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantUtf8Reference(ILjava/lang/String;)Lorg/objectweb/asm/Symbol;
|
||||
Method addConstantUtf8Reference(IILjava/lang/String;)V
|
||||
Method addBootstrapMethod(Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)Lorg/objectweb/asm/Symbol;
|
||||
Method addBootstrapMethod(III)Lorg/objectweb/asm/Symbol;
|
||||
Method getType(I)Lorg/objectweb/asm/Symbol;
|
||||
Method addType(Ljava/lang/String;)I
|
||||
Method addUninitializedType(Ljava/lang/String;I)I
|
||||
Method addMergedType(II)I
|
||||
Method addType(Lorg/objectweb/asm/SymbolTable$Entry;)I
|
||||
Method hash(II)I
|
||||
Method hash(IJ)I
|
||||
Method hash(ILjava/lang/String;)I
|
||||
Method hash(ILjava/lang/String;I)I
|
||||
Method hash(ILjava/lang/String;Ljava/lang/String;)I
|
||||
Method hash(ILjava/lang/String;Ljava/lang/String;I)I
|
||||
Method hash(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
|
||||
Method hash(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)I
|
||||
File org/objectweb/asm/Type.class
|
||||
Class org/objectweb/asm/Type
|
||||
Method <init>(ILjava/lang/String;II)V
|
||||
Method getType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
|
||||
Method getObjectType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
|
||||
Method getMethodType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
|
||||
Method getMethodType(Lorg/objectweb/asm/Type;[Lorg/objectweb/asm/Type;)Lorg/objectweb/asm/Type;
|
||||
Method getType(Ljava/lang/Class;)Lorg/objectweb/asm/Type;
|
||||
Method getType(Ljava/lang/reflect/Constructor;)Lorg/objectweb/asm/Type;
|
||||
Method getType(Ljava/lang/reflect/Method;)Lorg/objectweb/asm/Type;
|
||||
Method getArgumentTypes(Ljava/lang/String;)[Lorg/objectweb/asm/Type;
|
||||
Method getArgumentTypes(Ljava/lang/reflect/Method;)[Lorg/objectweb/asm/Type;
|
||||
Method getReturnType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
|
||||
Method getReturnType(Ljava/lang/reflect/Method;)Lorg/objectweb/asm/Type;
|
||||
Method getArgumentsAndReturnSizes(Ljava/lang/String;)I
|
||||
Method getType(Ljava/lang/String;II)Lorg/objectweb/asm/Type;
|
||||
Method getSort()I
|
||||
Method getDimensions()I
|
||||
Method getElementType()Lorg/objectweb/asm/Type;
|
||||
Method getClassName()Ljava/lang/String;
|
||||
Method getInternalName()Ljava/lang/String;
|
||||
Method getArgumentTypes()[Lorg/objectweb/asm/Type;
|
||||
Method getReturnType()Lorg/objectweb/asm/Type;
|
||||
Method getArgumentsAndReturnSizes()I
|
||||
Method getDescriptor()Ljava/lang/String;
|
||||
Method getMethodDescriptor(Lorg/objectweb/asm/Type;[Lorg/objectweb/asm/Type;)Ljava/lang/String;
|
||||
Method appendDescriptor(Ljava/lang/StringBuilder;)V
|
||||
Method getInternalName(Ljava/lang/Class;)Ljava/lang/String;
|
||||
Method getDescriptor(Ljava/lang/Class;)Ljava/lang/String;
|
||||
Method getConstructorDescriptor(Ljava/lang/reflect/Constructor;)Ljava/lang/String;
|
||||
Method getMethodDescriptor(Ljava/lang/reflect/Method;)Ljava/lang/String;
|
||||
Method appendDescriptor(Ljava/lang/StringBuilder;Ljava/lang/Class;)V
|
||||
Method getSize()I
|
||||
Method getOpcode(I)I
|
||||
Method equals(Ljava/lang/Object;)Z
|
||||
Method hashCode()I
|
||||
Method toString()Ljava/lang/String;
|
||||
Method <clinit>()V
|
||||
File org/objectweb/asm/TypePath.class
|
||||
Class org/objectweb/asm/TypePath
|
||||
Method <init>([BI)V
|
||||
Method getLength()I
|
||||
Method getStep(I)I
|
||||
Method getStepArgument(I)I
|
||||
Method fromString(Ljava/lang/String;)Lorg/objectweb/asm/TypePath;
|
||||
Method toString()Ljava/lang/String;
|
||||
Method put(Lorg/objectweb/asm/TypePath;Lorg/objectweb/asm/ByteVector;)V
|
||||
File org/objectweb/asm/TypeReference.class
|
||||
Class org/objectweb/asm/TypeReference
|
||||
Method <init>(I)V
|
||||
Method newTypeReference(I)Lorg/objectweb/asm/TypeReference;
|
||||
Method newTypeParameterReference(II)Lorg/objectweb/asm/TypeReference;
|
||||
Method newTypeParameterBoundReference(III)Lorg/objectweb/asm/TypeReference;
|
||||
Method newSuperTypeReference(I)Lorg/objectweb/asm/TypeReference;
|
||||
Method newFormalParameterReference(I)Lorg/objectweb/asm/TypeReference;
|
||||
Method newExceptionReference(I)Lorg/objectweb/asm/TypeReference;
|
||||
Method newTryCatchReference(I)Lorg/objectweb/asm/TypeReference;
|
||||
Method newTypeArgumentReference(II)Lorg/objectweb/asm/TypeReference;
|
||||
Method getSort()I
|
||||
Method getTypeParameterIndex()I
|
||||
Method getTypeParameterBoundIndex()I
|
||||
Method getSuperTypeIndex()I
|
||||
Method getFormalParameterIndex()I
|
||||
Method getExceptionIndex()I
|
||||
Method getTryCatchBlockIndex()I
|
||||
Method getTypeArgumentIndex()I
|
||||
Method getValue()I
|
||||
Method putTarget(ILorg/objectweb/asm/ByteVector;)V
|
||||
File org/objectweb/asm/signature/SignatureReader.class
|
||||
Class org/objectweb/asm/signature/SignatureReader
|
||||
Method <init>(Ljava/lang/String;)V
|
||||
Method accept(Lorg/objectweb/asm/signature/SignatureVisitor;)V
|
||||
Method acceptType(Lorg/objectweb/asm/signature/SignatureVisitor;)V
|
||||
Method parseType(Ljava/lang/String;ILorg/objectweb/asm/signature/SignatureVisitor;)I
|
||||
File org/objectweb/asm/signature/SignatureVisitor.class
|
||||
Class org/objectweb/asm/signature/SignatureVisitor
|
||||
Method <init>(I)V
|
||||
Method visitFormalTypeParameter(Ljava/lang/String;)V
|
||||
Method visitClassBound()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitInterfaceBound()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitSuperclass()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitInterface()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitParameterType()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitReturnType()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitExceptionType()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitBaseType(C)V
|
||||
Method visitTypeVariable(Ljava/lang/String;)V
|
||||
Method visitArrayType()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitClassType(Ljava/lang/String;)V
|
||||
Method visitInnerClassType(Ljava/lang/String;)V
|
||||
Method visitTypeArgument()V
|
||||
Method visitTypeArgument(C)Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitEnd()V
|
||||
File org/objectweb/asm/signature/SignatureWriter.class
|
||||
Class org/objectweb/asm/signature/SignatureWriter
|
||||
Method <init>()V
|
||||
Method visitFormalTypeParameter(Ljava/lang/String;)V
|
||||
Method visitClassBound()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitInterfaceBound()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitSuperclass()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitInterface()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitParameterType()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitReturnType()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitExceptionType()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitBaseType(C)V
|
||||
Method visitTypeVariable(Ljava/lang/String;)V
|
||||
Method visitArrayType()Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitClassType(Ljava/lang/String;)V
|
||||
Method visitInnerClassType(Ljava/lang/String;)V
|
||||
Method visitTypeArgument()V
|
||||
Method visitTypeArgument(C)Lorg/objectweb/asm/signature/SignatureVisitor;
|
||||
Method visitEnd()V
|
||||
Method toString()Ljava/lang/String;
|
||||
Method endFormals()V
|
||||
Method endArguments()V
|
||||
=== STATISTICS ===
|
||||
classes: 36
|
||||
methods: 506
|
||||
instructions: 23388
|
||||
invoke instructions: 2388
|
||||
branch instructions: 1313
|
||||
OPCODE MNEMONIC COUNT
|
||||
0 NOP 0
|
||||
1 ACONST_NULL 123
|
||||
2 ICONST_M1 80
|
||||
3 ICONST_0 483
|
||||
4 ICONST_1 356
|
||||
5 ICONST_2 213
|
||||
6 ICONST_3 63
|
||||
7 ICONST_4 84
|
||||
8 ICONST_5 13
|
||||
9 LCONST_0 4
|
||||
10 LCONST_1 0
|
||||
11 FCONST_0 0
|
||||
12 FCONST_1 0
|
||||
13 FCONST_2 0
|
||||
14 DCONST_0 0
|
||||
15 DCONST_1 0
|
||||
16 BIPUSH 646
|
||||
17 SIPUSH 227
|
||||
18 LDC 499
|
||||
19 LDC_W 0
|
||||
20 LDC2_W 0
|
||||
21 ILOAD 2516
|
||||
22 LLOAD 20
|
||||
23 FLOAD 2
|
||||
24 DLOAD 2
|
||||
25 ALOAD 5255
|
||||
26 ILOAD_0 0
|
||||
27 ILOAD_1 0
|
||||
28 ILOAD_2 0
|
||||
29 ILOAD_3 0
|
||||
30 LLOAD_0 0
|
||||
31 LLOAD_1 0
|
||||
32 LLOAD_2 0
|
||||
33 LLOAD_3 0
|
||||
34 FLOAD_0 0
|
||||
35 FLOAD_1 0
|
||||
36 FLOAD_2 0
|
||||
37 FLOAD_3 0
|
||||
38 DLOAD_0 0
|
||||
39 DLOAD_1 0
|
||||
40 DLOAD_2 0
|
||||
41 DLOAD_3 0
|
||||
42 ALOAD_0 0
|
||||
43 ALOAD_1 0
|
||||
44 ALOAD_2 0
|
||||
45 ALOAD_3 0
|
||||
46 IALOAD 88
|
||||
47 LALOAD 1
|
||||
48 FALOAD 1
|
||||
49 DALOAD 1
|
||||
50 AALOAD 71
|
||||
51 BALOAD 45
|
||||
52 CALOAD 1
|
||||
53 SALOAD 1
|
||||
54 ISTORE 879
|
||||
55 LSTORE 4
|
||||
56 FSTORE 1
|
||||
57 DSTORE 1
|
||||
58 ASTORE 424
|
||||
59 ISTORE_0 0
|
||||
60 ISTORE_1 0
|
||||
61 ISTORE_2 0
|
||||
62 ISTORE_3 0
|
||||
63 LSTORE_0 0
|
||||
64 LSTORE_1 0
|
||||
65 LSTORE_2 0
|
||||
66 LSTORE_3 0
|
||||
67 FSTORE_0 0
|
||||
68 FSTORE_1 0
|
||||
69 FSTORE_2 0
|
||||
70 FSTORE_3 0
|
||||
71 DSTORE_0 0
|
||||
72 DSTORE_1 0
|
||||
73 DSTORE_2 0
|
||||
74 DSTORE_3 0
|
||||
75 ASTORE_0 0
|
||||
76 ASTORE_1 0
|
||||
77 ASTORE_2 0
|
||||
78 ASTORE_3 0
|
||||
79 IASTORE 241
|
||||
80 LASTORE 1
|
||||
81 FASTORE 1
|
||||
82 DASTORE 1
|
||||
83 AASTORE 41
|
||||
84 BASTORE 55
|
||||
85 CASTORE 4
|
||||
86 SASTORE 1
|
||||
87 POP 317
|
||||
88 POP2 0
|
||||
89 DUP 500
|
||||
90 DUP_X1 37
|
||||
91 DUP_X2 5
|
||||
92 DUP2 1
|
||||
93 DUP2_X1 0
|
||||
94 DUP2_X2 0
|
||||
95 SWAP 0
|
||||
96 IADD 525
|
||||
97 LADD 0
|
||||
98 FADD 0
|
||||
99 DADD 0
|
||||
100 ISUB 101
|
||||
101 LSUB 0
|
||||
102 FSUB 0
|
||||
103 DSUB 0
|
||||
104 IMUL 39
|
||||
105 LMUL 0
|
||||
106 FMUL 0
|
||||
107 DMUL 0
|
||||
108 IDIV 3
|
||||
109 LDIV 0
|
||||
110 FDIV 0
|
||||
111 DDIV 0
|
||||
112 IREM 11
|
||||
113 LREM 0
|
||||
114 FREM 0
|
||||
115 DREM 0
|
||||
116 INEG 1
|
||||
117 LNEG 0
|
||||
118 FNEG 0
|
||||
119 DNEG 0
|
||||
120 ISHL 25
|
||||
121 LSHL 2
|
||||
122 ISHR 19
|
||||
123 LSHR 0
|
||||
124 IUSHR 30
|
||||
125 LUSHR 2
|
||||
126 IAND 182
|
||||
127 LAND 1
|
||||
128 IOR 79
|
||||
129 LOR 2
|
||||
130 IXOR 12
|
||||
131 LXOR 0
|
||||
132 IINC 477
|
||||
133 I2L 17
|
||||
134 I2F 0
|
||||
135 I2D 0
|
||||
136 L2I 6
|
||||
137 L2F 0
|
||||
138 L2D 0
|
||||
139 F2I 0
|
||||
140 F2L 0
|
||||
141 F2D 0
|
||||
142 D2I 0
|
||||
143 D2L 0
|
||||
144 D2F 0
|
||||
145 I2B 53
|
||||
146 I2C 5
|
||||
147 I2S 31
|
||||
148 LCMP 6
|
||||
149 FCMPL 0
|
||||
150 FCMPG 0
|
||||
151 DCMPL 0
|
||||
152 DCMPG 0
|
||||
153 IFEQ 264
|
||||
154 IFNE 68
|
||||
155 IFLT 4
|
||||
156 IFGE 1
|
||||
157 IFGT 0
|
||||
158 IFLE 73
|
||||
159 IF_ICMPEQ 108
|
||||
160 IF_ICMPNE 194
|
||||
161 IF_ICMPLT 30
|
||||
162 IF_ICMPGE 148
|
||||
163 IF_ICMPGT 16
|
||||
164 IF_ICMPLE 36
|
||||
165 IF_ACMPEQ 11
|
||||
166 IF_ACMPNE 27
|
||||
167 GOTO 718
|
||||
168 JSR 0
|
||||
169 RET 0
|
||||
170 TABLESWITCH 28
|
||||
171 LOOKUPSWITCH 5
|
||||
172 IRETURN 176
|
||||
173 LRETURN 1
|
||||
174 FRETURN 0
|
||||
175 DRETURN 0
|
||||
176 ARETURN 267
|
||||
177 RETURN 241
|
||||
178 GETSTATIC 72
|
||||
179 PUTSTATIC 18
|
||||
180 GETFIELD 2211
|
||||
181 PUTFIELD 473
|
||||
182 INVOKEVIRTUAL 1609
|
||||
183 INVOKESPECIAL 630
|
||||
184 INVOKESTATIC 149
|
||||
185 INVOKEINTERFACE 0
|
||||
186 INVOKEDYNAMIC 0
|
||||
187 NEW 225
|
||||
188 NEWARRAY 46
|
||||
189 ANEWARRAY 30
|
||||
190 ARRAYLENGTH 111
|
||||
191 ATHROW 68
|
||||
192 CHECKCAST 55
|
||||
193 INSTANCEOF 37
|
||||
194 MONITORENTER 0
|
||||
195 MONITOREXIT 0
|
||||
196 WIDE 0
|
||||
197 MULTIANEWARRAY 0
|
||||
198 IFNULL 243
|
||||
199 IFNONNULL 57
|
||||
200 0
|
||||
201 0
|
||||
202 0
|
||||
203 0
|
||||
204 0
|
||||
205 0
|
||||
206 0
|
||||
207 0
|
||||
208 0
|
||||
209 0
|
||||
210 0
|
||||
211 0
|
||||
212 0
|
||||
213 0
|
||||
214 0
|
||||
215 0
|
||||
216 0
|
||||
217 0
|
||||
218 0
|
||||
219 0
|
||||
220 0
|
||||
221 0
|
||||
222 0
|
||||
223 0
|
||||
224 0
|
||||
225 0
|
||||
226 0
|
||||
227 0
|
||||
228 0
|
||||
229 0
|
||||
230 0
|
||||
231 0
|
||||
232 0
|
||||
233 0
|
||||
234 0
|
||||
235 0
|
||||
236 0
|
||||
237 0
|
||||
238 0
|
||||
239 0
|
||||
240 0
|
||||
241 0
|
||||
242 0
|
||||
243 0
|
||||
244 0
|
||||
245 0
|
||||
246 0
|
||||
247 0
|
||||
248 0
|
||||
249 0
|
||||
250 0
|
||||
251 0
|
||||
252 0
|
||||
253 0
|
||||
254 0
|
||||
255 0
|
|
@ -0,0 +1,19 @@
|
|||
#!/bin/sh
|
||||
|
||||
echo Testing...
|
||||
|
||||
# Remove actual output from prior run (if any)
|
||||
rm -f asm-6.2.1.jar-actual.output.txt
|
||||
# There should be only one build folder, with the name of this IntelliJ project. Get that name.
|
||||
OUT=`ls ../out/production`
|
||||
# Run the program, storing stdout in a file
|
||||
java -cp ../out/production/${OUT}:../lib/asm-7.1.jar:../lib/asm-tree-7.1.jar:../lib/asm-util-7.1.jar Analyzer asm-6.2.1.jar > asm-6.2.1.jar-actual.output.txt
|
||||
# Compare actual to expected output
|
||||
diff asm-6.2.1.jar-actual.output.txt asm-6.2.1.jar-expected.output.txt
|
||||
RESULT=$?
|
||||
# If actual output differs from expected output, print "failed"
|
||||
if [ ${RESULT} -eq 0 ]; then
|
||||
echo passed
|
||||
else
|
||||
echo failed
|
||||
fi
|
Loading…
Reference in New Issue