org.objectweb.asm.tree

## Class TypeAnnotationNode

- java.lang.Object
- - org.objectweb.asm.AnnotationVisitor
  - - org.objectweb.asm.tree.AnnotationNode
    - - org.objectweb.asm.tree.TypeAnnotationNode

- Direct Known Subclasses:
    LocalVariableAnnotationNode

      public class TypeAnnotationNode
      extends AnnotationNode

  A node that represents a type annotationn.
  Author:
    Eric Bruneton

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `TypePath` | `typePath` The path to the annotated type argument, wildcard bound, array element type, or static outer type within the referenced type.
    `int` | `typeRef` A reference to the annotated type.

    - ### Fields inherited from class org.objectweb.asm.tree.AnnotationNode

      `desc, values`

    - ### Fields inherited from class org.objectweb.asm.AnnotationVisitor

      `api, av`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TypeAnnotationNode(int api, int typeRef, TypePath typePath, String desc)` Constructs a new `AnnotationNode`.
    `TypeAnnotationNode(int typeRef, TypePath typePath, String desc)` Constructs a new `AnnotationNode`.

  - ### Method Summary

    - ### Methods inherited from class org.objectweb.asm.tree.AnnotationNode

      `accept, check, visit, visitAnnotation, visitArray, visitEnd, visitEnum`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### typeRef

          public int typeRef

      A reference to the annotated type. See `TypeReference`.

    - #### typePath

          public TypePath typePath

      The path to the annotated type argument, wildcard bound, array element type, or static outer type within the referenced type. May be `null` if the annotation targets 'typeRef' as a whole.

  - ### Constructor Detail

    - #### TypeAnnotationNode

          public TypeAnnotationNode(int typeRef,
                                    TypePath typePath,
                                    String desc)

      Constructs a new `AnnotationNode`. Subclasses must not use this constructor. Instead, they must use the `TypeAnnotationNode(int, int, TypePath, String)` version.
      Parameters:
        `typeRef` - a reference to the annotated type. 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.
        `desc` - the class descriptor of the annotation class.
      Throws:
        `IllegalStateException` - If a subclass calls this constructor.

    - #### TypeAnnotationNode

          public TypeAnnotationNode(int api,
                                    int typeRef,
                                    TypePath typePath,
                                    String desc)

      Constructs a new `AnnotationNode`.
      Parameters:
        `api` - the ASM API version implemented by this visitor. Must be one of `Opcodes.ASM4` or `Opcodes.ASM5`.
        `typeRef` - a reference to the annotated type. 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.
        `desc` - the class descriptor of the annotation class.