Class TypeWriter.Default.ValidatingClassVisitor

  • Enclosing class:
    TypeWriter.Default<S>

    protected static class TypeWriter.Default.ValidatingClassVisitor
    extends org.objectweb.asm.ClassVisitor
    A class validator that validates that a class only defines members that are appropriate for the sort of the generated class.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private TypeWriter.Default.ValidatingClassVisitor.Constraint constraint
      The constraint to assert the members against.
      private static org.objectweb.asm.FieldVisitor IGNORE_FIELD
      Indicates that a field is ignored.
      private static org.objectweb.asm.MethodVisitor IGNORE_METHOD
      Indicates that a method is ignored.
      private static java.lang.String NO_PARAMETERS
      Indicates that a method has no method parameters.
      private static java.lang.String RETURNS_VOID
      Indicates that a method returns void.
      private static java.lang.String STRING_DESCRIPTOR
      The descriptor of the String type.
      • Fields inherited from class org.objectweb.asm.ClassVisitor

        api, cv
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected ValidatingClassVisitor​(org.objectweb.asm.ClassVisitor classVisitor)
      Creates a validating class visitor.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected static org.objectweb.asm.ClassVisitor of​(org.objectweb.asm.ClassVisitor classVisitor, TypeValidation typeValidation)
      Adds a validating visitor if type validation is enabled.
      void visit​(int version, int modifiers, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)  
      org.objectweb.asm.AnnotationVisitor visitAnnotation​(java.lang.String descriptor, boolean visible)  
      org.objectweb.asm.FieldVisitor visitField​(int modifiers, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.Object defaultValue)  
      org.objectweb.asm.MethodVisitor visitMethod​(int modifiers, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.String[] exceptions)  
      void visitNestHost​(java.lang.String nestHost)  
      void visitNestMember​(java.lang.String nestMember)  
      void visitPermittedSubclass​(java.lang.String permittedSubclass)  
      org.objectweb.asm.AnnotationVisitor visitTypeAnnotation​(int typeReference, org.objectweb.asm.TypePath typePath, java.lang.String descriptor, boolean visible)  
      • Methods inherited from class org.objectweb.asm.ClassVisitor

        visitAttribute, visitEnd, visitInnerClass, visitModule, visitOuterClass, visitRecordComponent, visitSource
      • Methods inherited from class java.lang.Object

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

      • NO_PARAMETERS

        private static final java.lang.String NO_PARAMETERS
        Indicates that a method has no method parameters.
        See Also:
        Constant Field Values
      • RETURNS_VOID

        private static final java.lang.String RETURNS_VOID
        Indicates that a method returns void.
        See Also:
        Constant Field Values
      • STRING_DESCRIPTOR

        private static final java.lang.String STRING_DESCRIPTOR
        The descriptor of the String type.
        See Also:
        Constant Field Values
      • IGNORE_FIELD

        private static final org.objectweb.asm.FieldVisitor IGNORE_FIELD
        Indicates that a field is ignored.
      • IGNORE_METHOD

        private static final org.objectweb.asm.MethodVisitor IGNORE_METHOD
        Indicates that a method is ignored.
    • Constructor Detail

      • ValidatingClassVisitor

        protected ValidatingClassVisitor​(org.objectweb.asm.ClassVisitor classVisitor)
        Creates a validating class visitor.
        Parameters:
        classVisitor - The class visitor to which any calls are delegated to.
    • Method Detail

      • of

        protected static org.objectweb.asm.ClassVisitor of​(org.objectweb.asm.ClassVisitor classVisitor,
                                                           TypeValidation typeValidation)
        Adds a validating visitor if type validation is enabled.
        Parameters:
        classVisitor - The original class visitor.
        typeValidation - The type validation state.
        Returns:
        A class visitor that applies type validation if this is required.
      • visit

        public void visit​(int version,
                          int modifiers,
                          java.lang.String name,
                          java.lang.String signature,
                          java.lang.String superName,
                          java.lang.String[] interfaces)
        Overrides:
        visit in class org.objectweb.asm.ClassVisitor
      • visitPermittedSubclass

        public void visitPermittedSubclass​(java.lang.String permittedSubclass)
        Overrides:
        visitPermittedSubclass in class org.objectweb.asm.ClassVisitor
      • visitAnnotation

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

        public org.objectweb.asm.AnnotationVisitor visitTypeAnnotation​(int typeReference,
                                                                       org.objectweb.asm.TypePath typePath,
                                                                       java.lang.String descriptor,
                                                                       boolean visible)
        Overrides:
        visitTypeAnnotation in class org.objectweb.asm.ClassVisitor
      • visitNestHost

        public void visitNestHost​(java.lang.String nestHost)
        Overrides:
        visitNestHost in class org.objectweb.asm.ClassVisitor
      • visitNestMember

        public void visitNestMember​(java.lang.String nestMember)
        Overrides:
        visitNestMember in class org.objectweb.asm.ClassVisitor
      • visitField

        public org.objectweb.asm.FieldVisitor visitField​(int modifiers,
                                                         java.lang.String name,
                                                         java.lang.String descriptor,
                                                         java.lang.String signature,
                                                         java.lang.Object defaultValue)
        Overrides:
        visitField in class org.objectweb.asm.ClassVisitor
      • visitMethod

        public org.objectweb.asm.MethodVisitor visitMethod​(int modifiers,
                                                           java.lang.String name,
                                                           java.lang.String descriptor,
                                                           java.lang.String signature,
                                                           java.lang.String[] exceptions)
        Overrides:
        visitMethod in class org.objectweb.asm.ClassVisitor