org.apache.bcel.classfile

## Class ParameterAnnotations

- java.lang.Object
- - org.apache.bcel.classfile.Attribute
  - - org.apache.bcel.classfile.ParameterAnnotations

- All Implemented Interfaces:
    Cloneable, Iterable<ParameterAnnotationEntry>, Node
  Direct Known Subclasses:
    RuntimeInvisibleParameterAnnotations, RuntimeVisibleParameterAnnotations

      public abstract class ParameterAnnotations
      extends Attribute
      implements Iterable<ParameterAnnotationEntry>

  base class for parameter annotations
  Since:
    6.0

- - ### Field Summary

    - ### Fields inherited from class org.apache.bcel.classfile.Attribute

      `constant_pool, EMPTY_ARRAY, length, name_index, tag`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ParameterAnnotations(byte parameterAnnotationType, int nameIndex, int length, ParameterAnnotationEntry[] parameterAnnotationTable, ConstantPool constantPool)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `accept(Visitor v)` Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class.
    `Attribute` | `copy(ConstantPool constantPool)`
    `void` | `dump(DataOutputStream dos)` Dumps attribute to file stream in binary format.
    `ParameterAnnotationEntry[]` | `getParameterAnnotationEntries()` returns the array of parameter annotation entries in this parameter annotation
    `ParameterAnnotationEntry[]` | `getParameterAnnotationTable()`
    `Iterator<ParameterAnnotationEntry>` | `iterator()`
    `void` | `setParameterAnnotationTable(ParameterAnnotationEntry[] parameterAnnotationTable)`

    - ### Methods inherited from class org.apache.bcel.classfile.Attribute

      `addAttributeReader, addAttributeReader, clone, getConstantPool, getLength, getName, getNameIndex, getTag, println, readAttribute, readAttribute, removeAttributeReader, setConstantPool, setLength, setNameIndex, toString`

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

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

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Constructor Detail

    - #### ParameterAnnotations

          public ParameterAnnotations(byte parameterAnnotationType,
                                      int nameIndex,
                                      int length,
                                      ParameterAnnotationEntry[] parameterAnnotationTable,
                                      ConstantPool constantPool)

      Parameters:
        `parameterAnnotationType` - the subclass type of the parameter annotation
        `nameIndex` - Index pointing to the name Code
        `length` - Content length in bytes
        `parameterAnnotationTable` - the actual parameter annotations
        `constantPool` - Array of constants

  - ### Method Detail

    - #### accept

          public void accept(Visitor v)

      Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class. I.e., the hierarchy of methods, fields, attributes, etc. spawns a tree of objects.
      Specified by:
        `accept` in interface `Node`
      Specified by:
        `accept` in class `Attribute`
      Parameters:
        `v` - Visitor object

    - #### copy

          public Attribute copy(ConstantPool constantPool)

      Specified by:
        `copy` in class `Attribute`
      Parameters:
        `constantPool` - constant pool to save.
      Returns:
        deep copy of this attribute

    - #### dump

          public void dump(DataOutputStream dos)
                    throws IOException

      Description copied from class: `Attribute`
      Dumps attribute to file stream in binary format.
      Overrides:
        `dump` in class `Attribute`
      Parameters:
        `dos` - Output file stream
      Throws:
        `IOException` - if an I/O error occurs.

    - #### getParameterAnnotationEntries

          public ParameterAnnotationEntry[] getParameterAnnotationEntries()

      returns the array of parameter annotation entries in this parameter annotation

    - #### getParameterAnnotationTable

          public final ParameterAnnotationEntry[] getParameterAnnotationTable()

      Returns:
        the parameter annotation entry table

    - #### iterator

          public Iterator<ParameterAnnotationEntry> iterator()

      Specified by:
        `iterator` in interface `Iterable<ParameterAnnotationEntry>`

    - #### setParameterAnnotationTable

          public final void setParameterAnnotationTable(ParameterAnnotationEntry[] parameterAnnotationTable)

      Parameters:
        `parameterAnnotationTable` - the entries to set in this parameter annotation

Copyright © 2004–2022 The Apache Software Foundation. All rights reserved.