java.lang.Object
org.eclipse.persistence.internal.libraries.asm.FieldVisitor
org.eclipse.persistence.internal.libraries.asm.tree.FieldNode

public class FieldNode extends FieldVisitor
A node that represents a field.
  • Field Details

    • access

      public int access
      The field's access flags (see Opcodes). This field also indicates if the field is synthetic and/or deprecated.
    • name

      public String name
      The field's name.
    • desc

      public String desc
      The field's descriptor (see Type).
    • signature

      public String signature
      The field's signature. May be null.
    • value

      public Object value
      The field's initial value. This field, which may be null if the field does not have an initial value, must be an Integer, a Float, a Long, a Double or a String.
    • visibleAnnotations

      public List<AnnotationNode> visibleAnnotations
      The runtime visible annotations of this field. May be null.
    • invisibleAnnotations

      public List<AnnotationNode> invisibleAnnotations
      The runtime invisible annotations of this field. May be null.
    • visibleTypeAnnotations

      public List<TypeAnnotationNode> visibleTypeAnnotations
      The runtime visible type annotations of this field. May be null.
    • invisibleTypeAnnotations

      public List<TypeAnnotationNode> invisibleTypeAnnotations
      The runtime invisible type annotations of this field. May be null.
    • attrs

      public List<Attribute> attrs
      The non standard attributes of this field. * May be null.
  • Constructor Details

    • FieldNode

      public FieldNode(int access, String name, String descriptor, String signature, Object value)
      Constructs a new FieldNode. Subclasses must not use this constructor. Instead, they must use the FieldNode(int, int, String, String, String, Object) version.
      Parameters:
      access - the field's access flags (see Opcodes). This parameter also indicates if the field is synthetic and/or deprecated.
      name - the field's name.
      descriptor - the field's descriptor (see Type).
      signature - the field's signature.
      value - the field's initial value. This parameter, which may be null if the field does not have an initial value, must be an Integer, a Float, a Long, a Double or a String.
      Throws:
      IllegalStateException - If a subclass calls this constructor.
    • FieldNode

      public FieldNode(int api, int access, String name, String descriptor, String signature, Object value)
      Constructs a new FieldNode.
      Parameters:
      api - the ASM API version implemented by this visitor. Must be one of the ASMx values in Opcodes.
      access - the field's access flags (see Opcodes). This parameter also indicates if the field is synthetic and/or deprecated.
      name - the field's name.
      descriptor - the field's descriptor (see Type).
      signature - the field's signature.
      value - the field's initial value. This parameter, which may be null if the field does not have an initial value, must be an Integer, a Float, a Long, a Double or a String.
  • Method Details

    • visitAnnotation

      public AnnotationVisitor visitAnnotation(String descriptor, boolean visible)
      Description copied from class: FieldVisitor
      Visits an annotation of the field.
      Overrides:
      visitAnnotation in class FieldVisitor
      Parameters:
      descriptor - the class descriptor of the annotation class.
      visible - true if the annotation is visible at runtime.
      Returns:
      a visitor to visit the annotation values, or null if this visitor is not interested in visiting this annotation.
    • visitTypeAnnotation

      public AnnotationVisitor visitTypeAnnotation(int typeRef, TypePath typePath, String descriptor, boolean visible)
      Description copied from class: FieldVisitor
      Visits an annotation on the type of the field.
      Overrides:
      visitTypeAnnotation in class FieldVisitor
      Parameters:
      typeRef - a reference to the annotated type. The sort of this type reference must be TypeReference.FIELD. See TypeReference.
      typePath - the path to the annotated type argument, wildcard bound, array element type, or static inner type within 'typeRef'. May be null if the annotation targets 'typeRef' as a whole.
      descriptor - the class descriptor of the annotation class.
      visible - true if the annotation is visible at runtime.
      Returns:
      a visitor to visit the annotation values, or null if this visitor is not interested in visiting this annotation.
    • visitAttribute

      public void visitAttribute(Attribute attribute)
      Description copied from class: FieldVisitor
      Visits a non standard attribute of the field.
      Overrides:
      visitAttribute in class FieldVisitor
      Parameters:
      attribute - an attribute.
    • visitEnd

      public void visitEnd()
      Description copied from class: FieldVisitor
      Visits the end of the field. This method, which is the last one to be called, is used to inform the visitor that all the annotations and attributes of the field have been visited.
      Overrides:
      visitEnd in class FieldVisitor
    • check

      public void check(int api)
      Checks that this field node is compatible with the given ASM API version. This method checks that this node, and all its children recursively, do not contain elements that were introduced in more recent versions of the ASM API than the given version.
      Parameters:
      api - an ASM API version. Must be one of the ASMx values in Opcodes.
    • accept

      public void accept(ClassVisitor classVisitor)
      Makes the given class visitor visit this field.
      Parameters:
      classVisitor - a class visitor.