Class ClassAnalyzer
- java.lang.Object
-
- org.objectweb.asm.ClassVisitor
-
- org.jacoco.core.internal.flow.ClassProbesVisitor
-
- org.jacoco.core.internal.analysis.ClassAnalyzer
-
- All Implemented Interfaces:
IFilterContext
public class ClassAnalyzer extends ClassProbesVisitor implements IFilterContext
Analyzes the structure of a class.
-
-
Constructor Summary
Constructors Constructor Description ClassAnalyzer(ClassCoverageImpl coverage, boolean[] probes, StringPool stringPool)Creates a new analyzer that builds coverage data for a class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Set<java.lang.String>getClassAnnotations()java.lang.StringgetClassName()java.lang.StringgetSourceDebugExtension()java.lang.StringgetSourceFileName()java.lang.StringgetSuperClassName()voidvisit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)org.objectweb.asm.AnnotationVisitorvisitAnnotation(java.lang.String desc, boolean visible)org.objectweb.asm.FieldVisitorvisitField(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.Object value)MethodProbesVisitorvisitMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)When visiting a method we need aMethodProbesVisitorto handle the probes of that method.voidvisitSource(java.lang.String source, java.lang.String debug)voidvisitTotalProbeCount(int count)Reports the total number of encountered probes.
-
-
-
Constructor Detail
-
ClassAnalyzer
public ClassAnalyzer(ClassCoverageImpl coverage, boolean[] probes, StringPool stringPool)
Creates a new analyzer that builds coverage data for a class.- Parameters:
coverage- coverage node for the analyzed class dataprobes- execution data for this class ornullstringPool- shared pool to minimize the number ofStringinstances
-
-
Method Detail
-
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:
visitin classorg.objectweb.asm.ClassVisitor
-
visitAnnotation
public org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String desc, boolean visible)- Overrides:
visitAnnotationin classorg.objectweb.asm.ClassVisitor
-
visitSource
public void visitSource(java.lang.String source, java.lang.String debug)- Overrides:
visitSourcein classorg.objectweb.asm.ClassVisitor
-
visitMethod
public MethodProbesVisitor visitMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)
Description copied from class:ClassProbesVisitorWhen visiting a method we need aMethodProbesVisitorto handle the probes of that method.- Specified by:
visitMethodin classClassProbesVisitor
-
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:
visitFieldin classorg.objectweb.asm.ClassVisitor
-
visitTotalProbeCount
public void visitTotalProbeCount(int count)
Description copied from class:ClassProbesVisitorReports the total number of encountered probes. For classes this method is called just beforeClassVisitor.visitEnd(). For interfaces this method is called before the first method (the static initializer) is emitted.- Specified by:
visitTotalProbeCountin classClassProbesVisitor- Parameters:
count- total number of probes
-
getClassName
public java.lang.String getClassName()
- Specified by:
getClassNamein interfaceIFilterContext- Returns:
- vm name of the enclosing class
-
getSuperClassName
public java.lang.String getSuperClassName()
- Specified by:
getSuperClassNamein interfaceIFilterContext- Returns:
- vm name of the super class of the enclosing class
-
getClassAnnotations
public java.util.Set<java.lang.String> getClassAnnotations()
- Specified by:
getClassAnnotationsin interfaceIFilterContext- Returns:
- vm names of the class annotations of the enclosing class
-
getSourceFileName
public java.lang.String getSourceFileName()
- Specified by:
getSourceFileNamein interfaceIFilterContext- Returns:
- file name of the corresponding source file or
nullif not available
-
getSourceDebugExtension
public java.lang.String getSourceDebugExtension()
- Specified by:
getSourceDebugExtensionin interfaceIFilterContext- Returns:
- value of SourceDebugExtension attribute or
nullif not available
-
-