Interface RuntimeInvisibleParameterAnnotationsAttribute

All Superinterfaces:
Attribute<RuntimeInvisibleParameterAnnotationsAttribute>, ClassFileElement, MethodElement

public sealed interface RuntimeInvisibleParameterAnnotationsAttribute extends Attribute<RuntimeInvisibleParameterAnnotationsAttribute>, MethodElement
Models the RuntimeInvisibleParameterAnnotations attribute (JVMS 4.7.19), which stores declaration annotations on the method parameters of this method that are visible to class file consumers but are not visible to core reflection.

This attribute only appears on methods, and does not permit multiple instances in a method. It has a data dependency on the constant pool.

The attribute was introduced in the Java SE Platform version 5.0, major version 49.

See Java Virtual Machine Specification:
4.7.19 The RuntimeInvisibleParameterAnnotations Attribute
Since:
24
See Also:
  • Method Details

    • parameterAnnotations

      List<List<Annotation>> parameterAnnotations()
      Returns the list of run-time invisible annotations on the method parameters. The element at the i'th index corresponds to the annotations on the i'th formal parameter, but note that some synthetic or implicit parameters may be omitted by this list. If a parameter has no annotations, that element is left empty, but is not omitted; thus, the list will never be truncated because trailing parameters are not annotated.
      Returns:
      the list of run-time invisible annotations on the method parameters
      See Also:
    • of

      Returns a RuntimeInvisibleParameterAnnotations attribute. The parameterAnnotations list should not be truncated, and must have a length equal to the number of formal parameters; elements for unannotated parameters may be empty, but may not be omitted. It may omit some synthetic or implicit parameters.
      Parameters:
      parameterAnnotations - a list of run-time invisible annotations for each parameter
      Returns:
      a RuntimeInvisibleParameterAnnotations attribute