Package org.openjdk.jmh.generators.asm
Class ASMClassInfo
- java.lang.Object
-
- org.objectweb.asm.ClassVisitor
-
- org.openjdk.jmh.generators.asm.ASMClassInfo
-
- All Implemented Interfaces:
ClassInfo
,MetadataInfo
class ASMClassInfo extends org.objectweb.asm.ClassVisitor implements ClassInfo
-
-
Field Summary
Fields Modifier and Type Field Description private int
access
private java.util.Map<java.lang.String,AnnotationInvocationHandler>
annotations
private ClassInfoRepo
classInfos
private java.util.List<MethodInfo>
constructors
private java.lang.String
declaringClass
private java.util.List<FieldInfo>
fields
private java.lang.String
idName
private boolean
isInner
private java.util.List<MethodInfo>
methods
private java.lang.String
name
private java.lang.String
origQualifiedName
private java.lang.String
packageName
private java.lang.String
qualifiedName
private java.lang.String
superName
-
Constructor Summary
Constructors Constructor Description ASMClassInfo(ClassInfoRepo classInfos)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends java.lang.annotation.Annotation>
TgetAnnotation(java.lang.Class<T> annClass)
java.util.Collection<MethodInfo>
getConstructors()
ClassInfo
getDeclaringClass()
java.util.Collection<java.lang.String>
getEnumConstants()
java.util.Collection<FieldInfo>
getFields()
java.lang.String
getIdName()
java.util.Collection<MethodInfo>
getMethods()
java.lang.String
getName()
java.lang.String
getPackageName()
java.lang.String
getQualifiedName()
ClassInfo
getSuperClass()
boolean
isAbstract()
boolean
isEnum()
boolean
isFinal()
boolean
isInner()
boolean
isPublic()
boolean
isStrictFP()
java.lang.String
toString()
void
visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
org.objectweb.asm.AnnotationVisitor
visitAnnotation(java.lang.String desc, boolean visible)
org.objectweb.asm.FieldVisitor
visitField(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.Object value)
void
visitInnerClass(java.lang.String name, java.lang.String outerName, java.lang.String innerName, int access)
org.objectweb.asm.MethodVisitor
visitMethod(int access, java.lang.String methodName, java.lang.String methodDesc, java.lang.String signature, java.lang.String[] exceptions)
void
visitOuterClass(java.lang.String owner, java.lang.String name, java.lang.String desc)
-
-
-
Field Detail
-
idName
private java.lang.String idName
-
packageName
private java.lang.String packageName
-
qualifiedName
private java.lang.String qualifiedName
-
name
private java.lang.String name
-
access
private int access
-
methods
private final java.util.List<MethodInfo> methods
-
constructors
private final java.util.List<MethodInfo> constructors
-
fields
private final java.util.List<FieldInfo> fields
-
annotations
private final java.util.Map<java.lang.String,AnnotationInvocationHandler> annotations
-
classInfos
private final ClassInfoRepo classInfos
-
superName
private java.lang.String superName
-
declaringClass
private java.lang.String declaringClass
-
isInner
private boolean isInner
-
origQualifiedName
private java.lang.String origQualifiedName
-
-
Constructor Detail
-
ASMClassInfo
public ASMClassInfo(ClassInfoRepo classInfos)
-
-
Method Detail
-
getIdName
public java.lang.String getIdName()
-
visit
public void visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
- Overrides:
visit
in classorg.objectweb.asm.ClassVisitor
-
getAnnotation
public <T extends java.lang.annotation.Annotation> T getAnnotation(java.lang.Class<T> annClass)
- Specified by:
getAnnotation
in interfaceClassInfo
- Type Parameters:
T
- annotation type- Parameters:
annClass
- annotation class- Returns:
- class-level annotation, if any; null otherwise
-
visitAnnotation
public org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String desc, boolean visible)
- Overrides:
visitAnnotation
in classorg.objectweb.asm.ClassVisitor
-
visitField
public org.objectweb.asm.FieldVisitor visitField(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.Object value)
- Overrides:
visitField
in classorg.objectweb.asm.ClassVisitor
-
visitMethod
public org.objectweb.asm.MethodVisitor visitMethod(int access, java.lang.String methodName, java.lang.String methodDesc, java.lang.String signature, java.lang.String[] exceptions)
- Overrides:
visitMethod
in classorg.objectweb.asm.ClassVisitor
-
getPackageName
public java.lang.String getPackageName()
- Specified by:
getPackageName
in interfaceClassInfo
- Returns:
- fully qualified package name
-
getName
public java.lang.String getName()
-
getQualifiedName
public java.lang.String getQualifiedName()
- Specified by:
getQualifiedName
in interfaceClassInfo
- Returns:
- fully qualified class name
-
getFields
public java.util.Collection<FieldInfo> getFields()
-
getConstructors
public java.util.Collection<MethodInfo> getConstructors()
- Specified by:
getConstructors
in interfaceClassInfo
- Returns:
- collection of all constructors in class
-
getMethods
public java.util.Collection<MethodInfo> getMethods()
- Specified by:
getMethods
in interfaceClassInfo
- Returns:
- collection of all methods in class
-
getSuperClass
public ClassInfo getSuperClass()
- Specified by:
getSuperClass
in interfaceClassInfo
- Returns:
- reference to super-class metadata
-
visitInnerClass
public void visitInnerClass(java.lang.String name, java.lang.String outerName, java.lang.String innerName, int access)
- Overrides:
visitInnerClass
in classorg.objectweb.asm.ClassVisitor
-
visitOuterClass
public void visitOuterClass(java.lang.String owner, java.lang.String name, java.lang.String desc)
- Overrides:
visitOuterClass
in classorg.objectweb.asm.ClassVisitor
-
getDeclaringClass
public ClassInfo getDeclaringClass()
- Specified by:
getDeclaringClass
in interfaceClassInfo
- Returns:
- reference to syntactically-enclosing class
-
isAbstract
public boolean isAbstract()
- Specified by:
isAbstract
in interfaceClassInfo
- Returns:
- true, if class is abstract
-
isPublic
public boolean isPublic()
-
isStrictFP
public boolean isStrictFP()
- Specified by:
isStrictFP
in interfaceClassInfo
- Returns:
- true, if class is strictfp
-
isFinal
public boolean isFinal()
-
isInner
public boolean isInner()
-
isEnum
public boolean isEnum()
-
getEnumConstants
public java.util.Collection<java.lang.String> getEnumConstants()
- Specified by:
getEnumConstants
in interfaceClassInfo
- Returns:
- if class is enum, the collection of its constant values; empty collection otherwise
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-