Class AsmClassReader.ForClassFileApi

    • Field Detail

      • classReader

        private final java.lang.Object classReader
        The class reader that represents the class file to be read.
    • Constructor Detail

      • ForClassFileApi

        public ForClassFileApi​(java.lang.Object classReader)
        Creates a new class reader that is based upon the Class File API.
        Parameters:
        classReader - The class reader that represents the class file to be read.
    • Method Detail

      • doPrivileged

        @Enhance
        private static <T> T doPrivileged​(java.security.PrivilegedAction<T> action)
        A proxy for java.security.AccessController#doPrivileged that is activated if available.
        Type Parameters:
        T - The type of the action's resolved value.
        Parameters:
        action - The action to execute from a privileged context.
        Returns:
        The action's resolved value.
      • unwrap

        @MaybeNull
        public <T> T unwrap​(java.lang.Class<T> type)
        Unwraps a class reader to the underlying reader mechanism.
        Specified by:
        unwrap in interface AsmClassReader
        Type Parameters:
        T - The type to unwrap.
        Parameters:
        type - The type of the reader that should be unwrapped.
        Returns:
        The unwrapped instance or null if the underlying instance does not represent this type.
      • getModifiers

        public int getModifiers()
        Returns the modifiers of the represented class. The property is read, if possible, without parsing the entire class file.
        Specified by:
        getModifiers in interface AsmClassReader
        Returns:
        The modifiers of the represented class.
      • getInternalName

        public java.lang.String getInternalName()
        Returns the internal name of the represented class. The property is read, if possible, without parsing the entire class file.
        Specified by:
        getInternalName in interface AsmClassReader
        Returns:
        The internal name of the represented class.
      • getSuperClassInternalName

        @MaybeNull
        public java.lang.String getSuperClassInternalName()
        Returns the internal name of the represented class's super class, or null if no such class exists. The property is read, if possible, without parsing the entire class file.
        Specified by:
        getSuperClassInternalName in interface AsmClassReader
        Returns:
        The internal name of the represented class's super class, or null if no such class exists.
      • getInterfaceInternalNames

        public java.util.List<java.lang.String> getInterfaceInternalNames()
        Returns the internal names of the represented class's interfaces. The property is read, if possible, without parsing the entire class file.
        Specified by:
        getInterfaceInternalNames in interface AsmClassReader
        Returns:
        Returns the internal names of the represented class's interfaces.
      • getSuperClassName

        @MaybeNull
        public java.lang.String getSuperClassName()
      • getInterfaceTypeName

        @MaybeNull
        public java.lang.String[] getInterfaceTypeName()
      • accept

        public void accept​(org.objectweb.asm.ClassVisitor classVisitor,
                           int flags)
        Accepts a class visitor to read a class.
        Specified by:
        accept in interface AsmClassReader
        Parameters:
        classVisitor - The class visitor who should be used as a callback for a class file.
        flags - The flags to consider while reading a class.