Klasse ExtendedAnnotation

java.lang.Object
org.aspectj.org.eclipse.jdt.internal.core.util.ClassFileStruct
org.aspectj.org.eclipse.jdt.internal.core.util.ExtendedAnnotation
Alle implementierten Schnittstellen:
IAnnotation, IExtendedAnnotation

public class ExtendedAnnotation extends ClassFileStruct implements IExtendedAnnotation
Seit:
3.10
  • Konstruktordetails

    • ExtendedAnnotation

      public ExtendedAnnotation(byte[] classFileBytes, IConstantPool constantPool, int offset) throws ClassFormatException
      Constructor for ExtendedAnnotation, builds an annotation from the supplied bytestream.
      Parameter:
      classFileBytes -
      constantPool -
      offset -
      Löst aus:
      ClassFormatException
  • Methodendetails

    • getTypeIndex

      public int getTypeIndex()
      Beschreibung aus Schnittstelle kopiert: IAnnotation
      Answer back the type index as described in the JVM specifications.
      Angegeben von:
      getTypeIndex in Schnittstelle IAnnotation
      Gibt zurück:
      the type index
    • getComponentsNumber

      public int getComponentsNumber()
      Beschreibung aus Schnittstelle kopiert: IAnnotation
      Answer back the number of components as described in the JVM specifications.
      Angegeben von:
      getComponentsNumber in Schnittstelle IAnnotation
      Gibt zurück:
      the type index
    • getComponents

      public IAnnotationComponent[] getComponents()
      Beschreibung aus Schnittstelle kopiert: IAnnotation
      Answer back the components as described in the JVM specifications. Answer an empty collection if none.
      Angegeben von:
      getComponents in Schnittstelle IAnnotation
      Gibt zurück:
      the components
    • getTypeName

      public char[] getTypeName()
      Beschreibung aus Schnittstelle kopiert: IAnnotation
      Answer back the type name as described in the JVM specifications.
      Angegeben von:
      getTypeName in Schnittstelle IAnnotation
      Gibt zurück:
      the type name
    • getTargetType

      public int getTargetType()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the target type as described in the JVM specifications.
      Angegeben von:
      getTargetType in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the target type
    • getExceptionTableIndex

      public int getExceptionTableIndex()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the exception table index when the target_type is EXCEPTION_PARAMETER.
      Angegeben von:
      getExceptionTableIndex in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the exception table index
    • getOffset

      public int getOffset()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the offset. For a target_type value equals to:
      target_type offset description
      0x43 (INSTANCE_OF), 0x44 (NEW), 0x45 (CONSTRUCTOR_REFERENCE), 0x46 (METHOD_REFERENCE) The offset within the bytecodes of the instanceof bytecode for INSTANCE_OF, the new bytecode for NEW and the implementing instruction for either a CONSTRUCTOR_REFERENCE or METHOD_REFERENCE.
      0x47 (CAST), 0x48 (CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT), 0x49 (METHOD_INVOCATION_TYPE_ARGUMENT), 0x4A (CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT), 0x4B (METHOD_REFERENCE_TYPE_ARGUMENT) The offset within the bytecodes of the new bytecode for constructor call, or the relevant bytecode for method invocation or method reference. For CAST the offset may point to the checkcast or another instruction as it is possible the cast may have been discarded by the compiler if it were a no-op.
      Angegeben von:
      getOffset in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the offset
    • getLocalVariableRefenceInfoLength

      public int getLocalVariableRefenceInfoLength()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the local variable reference info table length of this entry as specified in the JVM specifications.

      This is defined only for annotations related to a local variable.

      Angegeben von:
      getLocalVariableRefenceInfoLength in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the local variable reference info table length of this entry as specified in the JVM specifications
    • getLocalVariableTable

      public ILocalVariableReferenceInfo[] getLocalVariableTable()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the local variable reference info table of this entry as specified in the JVM specifications. Answer an empty array if none.

      This is defined only for annotations related to a local variable.

      Angegeben von:
      getLocalVariableTable in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the local variable reference info table of this entry as specified in the JVM specifications. Answer an empty array if none
    • getParameterIndex

      public int getParameterIndex()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the method parameter index.

      The index is 0-based.

      Angegeben von:
      getParameterIndex in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the method parameter index
    • getTypeParameterIndex

      public int getTypeParameterIndex()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the index of the type parameter of the class or method

      The index is 0-based.

      Angegeben von:
      getTypeParameterIndex in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the index of the type parameter of the class or method
    • getTypeParameterBoundIndex

      public int getTypeParameterBoundIndex()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the index of the bound of the type parameter of the method or class

      The index is 0-based.

      Angegeben von:
      getTypeParameterBoundIndex in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the index of the bound of the type parameter of the method or class
    • getTypePath

      public int[][] getTypePath()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the locations of the annotated type as described in the JVM specifications.

      This is used for parameterized and array types.

      Angegeben von:
      getTypePath in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the locations of the annotated type
    • getAnnotationTypeIndex

      public int getAnnotationTypeIndex()
      Beschreibung aus Schnittstelle kopiert: IExtendedAnnotation
      Answer back the index in the given different situations.

      The index is 0-based.

      target_type offset description
      0x10 (CLASS_EXTENDS) the index of the type in the clause: -1 (65535) is used if the annotation is on the superclass type, and the value i is used if the annotation is on the ith superinterface type (counting from zero).
      0x17 (THROWS) the index of the exception type in the clause: the value i denotes an annotation of the ith exception type (counting from zero).
      0x47 (CAST), 0x48 (CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT), 0x49 (METHOD_INVOCATION_TYPE_ARGUMENT), 0x4A (CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT), 0x4B (METHOD_REFERENCE_TYPE_ARGUMENT) the type argument index in the expression
      Angegeben von:
      getAnnotationTypeIndex in Schnittstelle IExtendedAnnotation
      Gibt zurück:
      the index in the given different situations