Class RecordComponentNode

java.lang.Object
org.objectweb.asm.RecordComponentVisitor
org.objectweb.asm.tree.RecordComponentNode

public class RecordComponentNode extends RecordComponentVisitor
A node that represents a record component.
  • Field Details

    • name

      public String name
      The record component name.
    • descriptor

      public String descriptor
      The record component descriptor (see Type).
    • signature

      public String signature
      The record component signature. May be null.
    • visibleAnnotations

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

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

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

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

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

    • RecordComponentNode

      public RecordComponentNode(String name, String descriptor, String signature)
      Constructs a new RecordComponentNode. Subclasses must not use this constructor. Instead, they must use the RecordComponentNode(int, String, String, String) version.
      Parameters:
      name - the record component name.
      descriptor - the record component descriptor (see Type).
      signature - the record component signature.
      Throws:
      IllegalStateException - If a subclass calls this constructor.
    • RecordComponentNode

      public RecordComponentNode(int api, String name, String descriptor, String signature)
      Constructs a new RecordComponentNode.
      Parameters:
      api - the ASM API version implemented by this visitor. Must be one of Opcodes.ASM8 or Opcodes.ASM9.
      name - the record component name.
      descriptor - the record component descriptor (see Type).
      signature - the record component signature.
  • Method Details

    • visitAnnotation

      public AnnotationVisitor visitAnnotation(String descriptor, boolean visible)
      Description copied from class: RecordComponentVisitor
      Visits an annotation of the record component.
      Overrides:
      visitAnnotation in class RecordComponentVisitor
      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: RecordComponentVisitor
      Visits an annotation on a type in the record component signature.
      Overrides:
      visitTypeAnnotation in class RecordComponentVisitor
      Parameters:
      typeRef - a reference to the annotated type. The sort of this type reference must be TypeReference.CLASS_TYPE_PARAMETER, TypeReference.CLASS_TYPE_PARAMETER_BOUND or TypeReference.CLASS_EXTENDS. 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: RecordComponentVisitor
      Visits a non standard attribute of the record component.
      Overrides:
      visitAttribute in class RecordComponentVisitor
      Parameters:
      attribute - an attribute.
    • visitEnd

      public void visitEnd()
      Description copied from class: RecordComponentVisitor
      Visits the end of the record component. This method, which is the last one to be called, is used to inform the visitor that everything have been visited.
      Overrides:
      visitEnd in class RecordComponentVisitor
    • check

      public void check(int api)
      Checks that this record component 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 Opcodes.ASM8 or Opcodes.ASM9.
    • accept

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