Class ModuleInfoYmlParser


  • public class ModuleInfoYmlParser
    extends java.lang.Object
    A module-info.yml parser.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.nio.file.Path moduleInfoYml  
      private static java.lang.String[] NO_STRINGS  
    • Constructor Summary

      Constructors 
      Constructor Description
      ModuleInfoYmlParser​(java.nio.file.Path moduleInfoYml)
      Construct a new instance.
    • Field Detail

      • NO_STRINGS

        private static final java.lang.String[] NO_STRINGS
      • moduleInfoYml

        private final java.nio.file.Path moduleInfoYml
    • Constructor Detail

      • ModuleInfoYmlParser

        public ModuleInfoYmlParser​(java.nio.file.Path moduleInfoYml)
        Construct a new instance.
        Parameters:
        moduleInfoYml - the path to the module-info.yml file
    • Method Detail

      • accept

        public void accept​(org.objectweb.asm.ClassVisitor classVisitor)
                    throws java.io.IOException
        Read the module-info.yml file into the given class visitor.
        Parameters:
        classVisitor - the class visitor (must not be null)
        Throws:
        java.io.IOException - if an I/O exception occurred
      • parseRoot

        private void parseRoot​(ModuleInfoYml moduleInfo,
                               org.objectweb.asm.ClassVisitor cv)
      • processAnnotation

        private void processAnnotation​(org.objectweb.asm.ClassVisitor cv,
                                       ModuleAnnotation annotation)
      • processAnnotation

        private void processAnnotation​(ModuleAnnotation annotation,
                                       org.objectweb.asm.AnnotationVisitor annotationVisitor)
      • processAnnotationValue

        private void processAnnotationValue​(ModuleAnnotation annotation,
                                            org.objectweb.asm.AnnotationVisitor visitor,
                                            java.lang.String name,
                                            java.lang.Object value)
      • processAnnotationValues

        private void processAnnotationValues​(ModuleAnnotation annotation,
                                             org.objectweb.asm.AnnotationVisitor visitor,
                                             java.util.List<?> list)