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.