Class AnnotationStatistics

  • All Implemented Interfaces:
    javax.annotation.processing.Processor, OptionConfiguration

    @SupportedOptions({"nolocations","annotations","annotationserror","annotationsummaryonly"})
    @SupportedSourceVersion(RELEASE_8)
    public class AnnotationStatistics
    extends SourceChecker
    An annotation processor for counting the annotations in a program and for listing the potential locations of annotations. To invoke it, use
     javac -proc:only -processor org.checkerframework.common.util.count.AnnotationStatistics MyFile.java ...
     

    You probably want to pipe the output through another program:

    • Total annotation count: ... | wc.
    • Breakdown by location type: ... | sort | uniq -c
    • Count for only certain location types: use grep

    By default, this utility displays annotation locations only. The following options may be used to adjust the output:

    • -Aannotations: prints information about the annotations, such as whether it is in a signature or in a body
    • -Anolocations: suppresses location output; only makes sense in conjunction with -Aannotations
    • -Aannotationsummaryonly: with both of the obove, only outputs a summary
    • -Aannotationserror: histogram is issued as a warning, not just printed
    See Also:
    JavaCodeStatistics
    • Constructor Detail

      • AnnotationStatistics

        public AnnotationStatistics()
        Creates an AnnotationStatistics.
    • Method Detail

      • incrementCount

        protected void incrementCount​(javax.lang.model.element.Name annoName)
        Increment the number of times annotation with name annoName has appeared.