Class ClassAnalyzer

    • 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
      private void addMethodCoverage​(java.lang.String name, java.lang.String desc, java.lang.String signature, InstructionsBuilder icc, org.objectweb.asm.tree.MethodNode methodNode)  
      java.util.Set<java.lang.String> getClassAnnotations()  
      java.util.Set<java.lang.String> getClassAttributes()  
      java.lang.String getClassName()  
      java.lang.String getSourceDebugExtension()  
      java.lang.String getSourceFileName()  
      java.lang.String getSuperClassName()  
      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)  
      void visitAttribute​(org.objectweb.asm.Attribute attribute)  
      org.objectweb.asm.FieldVisitor visitField​(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.Object value)  
      MethodProbesVisitor visitMethod​(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)
      When visiting a method we need a MethodProbesVisitor to handle the probes of that method.
      void visitSource​(java.lang.String source, java.lang.String debug)  
      void visitTotalProbeCount​(int count)
      Reports the total number of encountered probes.
      • Methods inherited from class org.objectweb.asm.ClassVisitor

        getDelegate, visitEnd, visitInnerClass, visitModule, visitNestHost, visitNestMember, visitOuterClass, visitPermittedSubclass, visitRecordComponent, visitTypeAnnotation
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • probes

        private final boolean[] probes
      • classAnnotations

        private final java.util.Set<java.lang.String> classAnnotations
      • classAttributes

        private final java.util.Set<java.lang.String> classAttributes
      • sourceDebugExtension

        private java.lang.String sourceDebugExtension
      • filter

        private final IFilter filter
    • 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 data
        probes - execution data for this class or null
        stringPool - shared pool to minimize the number of String instances
    • 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:
        visit in class org.objectweb.asm.ClassVisitor
      • visitAnnotation

        public org.objectweb.asm.AnnotationVisitor visitAnnotation​(java.lang.String desc,
                                                                   boolean visible)
        Overrides:
        visitAnnotation in class org.objectweb.asm.ClassVisitor
      • visitAttribute

        public void visitAttribute​(org.objectweb.asm.Attribute attribute)
        Overrides:
        visitAttribute in class org.objectweb.asm.ClassVisitor
      • visitSource

        public void visitSource​(java.lang.String source,
                                java.lang.String debug)
        Overrides:
        visitSource in class org.objectweb.asm.ClassVisitor
      • addMethodCoverage

        private void addMethodCoverage​(java.lang.String name,
                                       java.lang.String desc,
                                       java.lang.String signature,
                                       InstructionsBuilder icc,
                                       org.objectweb.asm.tree.MethodNode methodNode)
      • 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 class org.objectweb.asm.ClassVisitor
      • visitTotalProbeCount

        public void visitTotalProbeCount​(int count)
        Description copied from class: ClassProbesVisitor
        Reports the total number of encountered probes. This method is called just before ClassVisitor.visitEnd()
        Specified by:
        visitTotalProbeCount in class ClassProbesVisitor
        Parameters:
        count - total number of probes
      • getClassName

        public java.lang.String getClassName()
        Specified by:
        getClassName in interface IFilterContext
        Returns:
        vm name of the enclosing class
      • getSuperClassName

        public java.lang.String getSuperClassName()
        Specified by:
        getSuperClassName in interface IFilterContext
        Returns:
        vm name of the super class of the enclosing class
      • getClassAnnotations

        public java.util.Set<java.lang.String> getClassAnnotations()
        Specified by:
        getClassAnnotations in interface IFilterContext
        Returns:
        vm names of the class annotations of the enclosing class
      • getClassAttributes

        public java.util.Set<java.lang.String> getClassAttributes()
        Specified by:
        getClassAttributes in interface IFilterContext
        Returns:
        names of the class attributes
      • getSourceFileName

        public java.lang.String getSourceFileName()
        Specified by:
        getSourceFileName in interface IFilterContext
        Returns:
        file name of the corresponding source file or null if not available
      • getSourceDebugExtension

        public java.lang.String getSourceDebugExtension()
        Specified by:
        getSourceDebugExtension in interface IFilterContext
        Returns:
        value of SourceDebugExtension attribute or null if not available