org.eclipse.gemini.blueprint.test.internal.util
Class DependencyVisitor
java.lang.Object
org.eclipse.gemini.blueprint.test.internal.util.DependencyVisitor
- All Implemented Interfaces:
- org.objectweb.asm.AnnotationVisitor, org.objectweb.asm.ClassVisitor, org.objectweb.asm.FieldVisitor, org.objectweb.asm.MethodVisitor, org.objectweb.asm.signature.SignatureVisitor
public class DependencyVisitor
- extends Object
- implements org.objectweb.asm.AnnotationVisitor, org.objectweb.asm.signature.SignatureVisitor, org.objectweb.asm.ClassVisitor, org.objectweb.asm.FieldVisitor, org.objectweb.asm.MethodVisitor
ASM based class for determining a class imports. The code is heavily based on an Eugene Kuleshov's ASM tutorial.
The main differences from the original source in the article are the 1.4 compatibility, the handling of class
objects not instantiated (MyClass.class.getName()) as these are specially handled by the compiler and analysis of
inner classes, including ones from different packages.
- Author:
- Costin Leau
| Fields inherited from interface org.objectweb.asm.signature.SignatureVisitor |
EXTENDS, INSTANCEOF, SUPER |
|
Method Summary |
Map |
getGlobals()
|
Set |
getInnerClasses()
|
Set |
getPackages()
|
void |
visit(int version,
int access,
String name,
String signature,
String superName,
String[] interfaces)
|
void |
visit(String name,
Object value)
|
org.objectweb.asm.AnnotationVisitor |
visitAnnotation(String desc,
boolean visible)
|
org.objectweb.asm.AnnotationVisitor |
visitAnnotation(String name,
String desc)
|
org.objectweb.asm.AnnotationVisitor |
visitAnnotationDefault()
|
org.objectweb.asm.AnnotationVisitor |
visitArray(String name)
|
org.objectweb.asm.signature.SignatureVisitor |
visitArrayType()
|
void |
visitAttribute(org.objectweb.asm.Attribute attr)
|
void |
visitBaseType(char descriptor)
|
org.objectweb.asm.signature.SignatureVisitor |
visitClassBound()
|
void |
visitClassType(String name)
|
void |
visitCode()
|
void |
visitEnd()
|
void |
visitEnum(String name,
String desc,
String value)
|
org.objectweb.asm.signature.SignatureVisitor |
visitExceptionType()
|
org.objectweb.asm.FieldVisitor |
visitField(int access,
String name,
String desc,
String signature,
Object value)
|
void |
visitFieldInsn(int opcode,
String owner,
String name,
String desc)
|
void |
visitFormalTypeParameter(String name)
|
void |
visitIincInsn(int var,
int increment)
|
void |
visitInnerClass(String name,
String outerName,
String innerName,
int access)
|
void |
visitInnerClassType(String name)
|
void |
visitInsn(int opcode)
|
org.objectweb.asm.signature.SignatureVisitor |
visitInterface()
|
org.objectweb.asm.signature.SignatureVisitor |
visitInterfaceBound()
|
void |
visitIntInsn(int opcode,
int operand)
|
void |
visitJumpInsn(int opcode,
org.objectweb.asm.Label label)
|
void |
visitLabel(org.objectweb.asm.Label label)
|
void |
visitLdcInsn(Object cst)
|
void |
visitLineNumber(int line,
org.objectweb.asm.Label start)
|
void |
visitLocalVariable(String name,
String desc,
String signature,
org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
int index)
|
void |
visitLookupSwitchInsn(org.objectweb.asm.Label dflt,
int[] keys,
org.objectweb.asm.Label[] labels)
|
void |
visitMaxs(int maxStack,
int maxLocals)
|
org.objectweb.asm.MethodVisitor |
visitMethod(int access,
String name,
String desc,
String signature,
String[] exceptions)
|
void |
visitMethodInsn(int opcode,
String owner,
String name,
String desc)
|
void |
visitMultiANewArrayInsn(String desc,
int dims)
|
void |
visitOuterClass(String owner,
String name,
String desc)
|
org.objectweb.asm.AnnotationVisitor |
visitParameterAnnotation(int parameter,
String desc,
boolean visible)
|
org.objectweb.asm.signature.SignatureVisitor |
visitParameterType()
|
org.objectweb.asm.signature.SignatureVisitor |
visitReturnType()
|
void |
visitSource(String source,
String debug)
|
org.objectweb.asm.signature.SignatureVisitor |
visitSuperclass()
|
void |
visitTableSwitchInsn(int min,
int max,
org.objectweb.asm.Label dflt,
org.objectweb.asm.Label[] labels)
|
void |
visitTryCatchBlock(org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
org.objectweb.asm.Label handler,
String type)
|
void |
visitTypeArgument()
|
org.objectweb.asm.signature.SignatureVisitor |
visitTypeArgument(char wildcard)
|
void |
visitTypeInsn(int opcode,
String desc)
|
void |
visitTypeVariable(String name)
|
void |
visitVarInsn(int opcode,
int var)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DependencyVisitor
public DependencyVisitor()
getGlobals
public Map getGlobals()
getPackages
public Set getPackages()
getInnerClasses
public Set getInnerClasses()
visit
public void visit(int version,
int access,
String name,
String signature,
String superName,
String[] interfaces)
- Specified by:
visit in interface org.objectweb.asm.ClassVisitor
visitAnnotation
public org.objectweb.asm.AnnotationVisitor visitAnnotation(String desc,
boolean visible)
- Specified by:
visitAnnotation in interface org.objectweb.asm.ClassVisitor- Specified by:
visitAnnotation in interface org.objectweb.asm.FieldVisitor- Specified by:
visitAnnotation in interface org.objectweb.asm.MethodVisitor
visitAttribute
public void visitAttribute(org.objectweb.asm.Attribute attr)
- Specified by:
visitAttribute in interface org.objectweb.asm.ClassVisitor- Specified by:
visitAttribute in interface org.objectweb.asm.FieldVisitor- Specified by:
visitAttribute in interface org.objectweb.asm.MethodVisitor
visitField
public org.objectweb.asm.FieldVisitor visitField(int access,
String name,
String desc,
String signature,
Object value)
- Specified by:
visitField in interface org.objectweb.asm.ClassVisitor
visitMethod
public org.objectweb.asm.MethodVisitor visitMethod(int access,
String name,
String desc,
String signature,
String[] exceptions)
- Specified by:
visitMethod in interface org.objectweb.asm.ClassVisitor
visitSource
public void visitSource(String source,
String debug)
- Specified by:
visitSource in interface org.objectweb.asm.ClassVisitor
visitInnerClass
public void visitInnerClass(String name,
String outerName,
String innerName,
int access)
- Specified by:
visitInnerClass in interface org.objectweb.asm.ClassVisitor
visitOuterClass
public void visitOuterClass(String owner,
String name,
String desc)
- Specified by:
visitOuterClass in interface org.objectweb.asm.ClassVisitor
visitParameterAnnotation
public org.objectweb.asm.AnnotationVisitor visitParameterAnnotation(int parameter,
String desc,
boolean visible)
- Specified by:
visitParameterAnnotation in interface org.objectweb.asm.MethodVisitor
visitTypeInsn
public void visitTypeInsn(int opcode,
String desc)
- Specified by:
visitTypeInsn in interface org.objectweb.asm.MethodVisitor
visitFieldInsn
public void visitFieldInsn(int opcode,
String owner,
String name,
String desc)
- Specified by:
visitFieldInsn in interface org.objectweb.asm.MethodVisitor
visitMethodInsn
public void visitMethodInsn(int opcode,
String owner,
String name,
String desc)
- Specified by:
visitMethodInsn in interface org.objectweb.asm.MethodVisitor
visitLdcInsn
public void visitLdcInsn(Object cst)
- Specified by:
visitLdcInsn in interface org.objectweb.asm.MethodVisitor
visitMultiANewArrayInsn
public void visitMultiANewArrayInsn(String desc,
int dims)
- Specified by:
visitMultiANewArrayInsn in interface org.objectweb.asm.MethodVisitor
visitLocalVariable
public void visitLocalVariable(String name,
String desc,
String signature,
org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
int index)
- Specified by:
visitLocalVariable in interface org.objectweb.asm.MethodVisitor
visitAnnotationDefault
public org.objectweb.asm.AnnotationVisitor visitAnnotationDefault()
- Specified by:
visitAnnotationDefault in interface org.objectweb.asm.MethodVisitor
visitCode
public void visitCode()
- Specified by:
visitCode in interface org.objectweb.asm.MethodVisitor
visitInsn
public void visitInsn(int opcode)
- Specified by:
visitInsn in interface org.objectweb.asm.MethodVisitor
visitIntInsn
public void visitIntInsn(int opcode,
int operand)
- Specified by:
visitIntInsn in interface org.objectweb.asm.MethodVisitor
visitVarInsn
public void visitVarInsn(int opcode,
int var)
- Specified by:
visitVarInsn in interface org.objectweb.asm.MethodVisitor
visitJumpInsn
public void visitJumpInsn(int opcode,
org.objectweb.asm.Label label)
- Specified by:
visitJumpInsn in interface org.objectweb.asm.MethodVisitor
visitLabel
public void visitLabel(org.objectweb.asm.Label label)
- Specified by:
visitLabel in interface org.objectweb.asm.MethodVisitor
visitIincInsn
public void visitIincInsn(int var,
int increment)
- Specified by:
visitIincInsn in interface org.objectweb.asm.MethodVisitor
visitTableSwitchInsn
public void visitTableSwitchInsn(int min,
int max,
org.objectweb.asm.Label dflt,
org.objectweb.asm.Label[] labels)
- Specified by:
visitTableSwitchInsn in interface org.objectweb.asm.MethodVisitor
visitLookupSwitchInsn
public void visitLookupSwitchInsn(org.objectweb.asm.Label dflt,
int[] keys,
org.objectweb.asm.Label[] labels)
- Specified by:
visitLookupSwitchInsn in interface org.objectweb.asm.MethodVisitor
visitTryCatchBlock
public void visitTryCatchBlock(org.objectweb.asm.Label start,
org.objectweb.asm.Label end,
org.objectweb.asm.Label handler,
String type)
- Specified by:
visitTryCatchBlock in interface org.objectweb.asm.MethodVisitor
visitLineNumber
public void visitLineNumber(int line,
org.objectweb.asm.Label start)
- Specified by:
visitLineNumber in interface org.objectweb.asm.MethodVisitor
visitMaxs
public void visitMaxs(int maxStack,
int maxLocals)
- Specified by:
visitMaxs in interface org.objectweb.asm.MethodVisitor
visit
public void visit(String name,
Object value)
- Specified by:
visit in interface org.objectweb.asm.AnnotationVisitor
visitEnum
public void visitEnum(String name,
String desc,
String value)
- Specified by:
visitEnum in interface org.objectweb.asm.AnnotationVisitor
visitAnnotation
public org.objectweb.asm.AnnotationVisitor visitAnnotation(String name,
String desc)
- Specified by:
visitAnnotation in interface org.objectweb.asm.AnnotationVisitor
visitArray
public org.objectweb.asm.AnnotationVisitor visitArray(String name)
- Specified by:
visitArray in interface org.objectweb.asm.AnnotationVisitor
visitFormalTypeParameter
public void visitFormalTypeParameter(String name)
- Specified by:
visitFormalTypeParameter in interface org.objectweb.asm.signature.SignatureVisitor
visitClassBound
public org.objectweb.asm.signature.SignatureVisitor visitClassBound()
- Specified by:
visitClassBound in interface org.objectweb.asm.signature.SignatureVisitor
visitInterfaceBound
public org.objectweb.asm.signature.SignatureVisitor visitInterfaceBound()
- Specified by:
visitInterfaceBound in interface org.objectweb.asm.signature.SignatureVisitor
visitSuperclass
public org.objectweb.asm.signature.SignatureVisitor visitSuperclass()
- Specified by:
visitSuperclass in interface org.objectweb.asm.signature.SignatureVisitor
visitInterface
public org.objectweb.asm.signature.SignatureVisitor visitInterface()
- Specified by:
visitInterface in interface org.objectweb.asm.signature.SignatureVisitor
visitParameterType
public org.objectweb.asm.signature.SignatureVisitor visitParameterType()
- Specified by:
visitParameterType in interface org.objectweb.asm.signature.SignatureVisitor
visitReturnType
public org.objectweb.asm.signature.SignatureVisitor visitReturnType()
- Specified by:
visitReturnType in interface org.objectweb.asm.signature.SignatureVisitor
visitExceptionType
public org.objectweb.asm.signature.SignatureVisitor visitExceptionType()
- Specified by:
visitExceptionType in interface org.objectweb.asm.signature.SignatureVisitor
visitBaseType
public void visitBaseType(char descriptor)
- Specified by:
visitBaseType in interface org.objectweb.asm.signature.SignatureVisitor
visitTypeVariable
public void visitTypeVariable(String name)
- Specified by:
visitTypeVariable in interface org.objectweb.asm.signature.SignatureVisitor
visitArrayType
public org.objectweb.asm.signature.SignatureVisitor visitArrayType()
- Specified by:
visitArrayType in interface org.objectweb.asm.signature.SignatureVisitor
visitClassType
public void visitClassType(String name)
- Specified by:
visitClassType in interface org.objectweb.asm.signature.SignatureVisitor
visitInnerClassType
public void visitInnerClassType(String name)
- Specified by:
visitInnerClassType in interface org.objectweb.asm.signature.SignatureVisitor
visitTypeArgument
public void visitTypeArgument()
- Specified by:
visitTypeArgument in interface org.objectweb.asm.signature.SignatureVisitor
visitTypeArgument
public org.objectweb.asm.signature.SignatureVisitor visitTypeArgument(char wildcard)
- Specified by:
visitTypeArgument in interface org.objectweb.asm.signature.SignatureVisitor
visitEnd
public void visitEnd()
- Specified by:
visitEnd in interface org.objectweb.asm.AnnotationVisitor- Specified by:
visitEnd in interface org.objectweb.asm.ClassVisitor- Specified by:
visitEnd in interface org.objectweb.asm.FieldVisitor- Specified by:
visitEnd in interface org.objectweb.asm.MethodVisitor- Specified by:
visitEnd in interface org.objectweb.asm.signature.SignatureVisitor
Copyright © 2006-2012. All Rights Reserved.