org.aspectj.org.eclipse.jdt.internal.compiler.classfmt
Class TypeAnnotationInfo

java.lang.Object
  extended by org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct
      extended by org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.TypeAnnotationInfo
All Implemented Interfaces:
IBinaryTypeAnnotation

public class TypeAnnotationInfo
extends ClassFileStruct
implements IBinaryTypeAnnotation

The TypeAnnotationInfo class does not currently support type annotations within code blocks (those that have a target type of 0x40 and higher) - it is not yet clear that these need to be accessible.


Field Summary
 
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.env.IBinaryTypeAnnotation
NO_TYPE_PATH
 
Method Summary
 boolean equals(java.lang.Object obj)
           
 IBinaryAnnotation getAnnotation()
           
 int getBoundIndex()
          Applicable for target type 0x11(CLASS_TYPE_PARAMETER_BOUND), 0x12(METHOD_TYPE_PARAMETER_BOUND)
 int getMethodFormalParameterIndex()
          Applicable for target type 0x16(METHOD_FORMAL_PARAMETER)
 int getSupertypeIndex()
          Applicable for target type 0x10(CLASS_EXTENDS)
 int getTargetType()
           
 int getThrowsTypeIndex()
          Applicable for target type 0x17(THROWS)
 int getTypeParameterIndex()
          Applicable for target type 0x00(CLASS_TYPE_PARAMETER), 0x01(METHOD_TYPE_PARAMETER)
 int[] getTypePath()
           
 int hashCode()
           
protected  void initialize()
           
protected  void reset()
           
 java.lang.String toString()
           
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct
doubleAt, floatAt, i4At, i8At, u1At, u2At, u4At, utf8At
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

getAnnotation

public IBinaryAnnotation getAnnotation()
Specified by:
getAnnotation in interface IBinaryTypeAnnotation
Returns:
the annotation

initialize

protected void initialize()

reset

protected void reset()
Overrides:
reset in class ClassFileStruct

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getTargetType

public int getTargetType()
Specified by:
getTargetType in interface IBinaryTypeAnnotation
Returns:
the target type, according to the constants in AnnotationTargetTypeConstants

getSupertypeIndex

public int getSupertypeIndex()
Description copied from interface: IBinaryTypeAnnotation
Applicable for target type 0x10(CLASS_EXTENDS)

Specified by:
getSupertypeIndex in interface IBinaryTypeAnnotation
Returns:
the supertype index. -1 (65535) for superclass, 0..n for superinterfaces

getTypeParameterIndex

public int getTypeParameterIndex()
Description copied from interface: IBinaryTypeAnnotation
Applicable for target type 0x00(CLASS_TYPE_PARAMETER), 0x01(METHOD_TYPE_PARAMETER)

Specified by:
getTypeParameterIndex in interface IBinaryTypeAnnotation
Returns:
the type parameter index (0 based)

getBoundIndex

public int getBoundIndex()
Description copied from interface: IBinaryTypeAnnotation
Applicable for target type 0x11(CLASS_TYPE_PARAMETER_BOUND), 0x12(METHOD_TYPE_PARAMETER_BOUND)

Specified by:
getBoundIndex in interface IBinaryTypeAnnotation
Returns:
the bound index

getMethodFormalParameterIndex

public int getMethodFormalParameterIndex()
Description copied from interface: IBinaryTypeAnnotation
Applicable for target type 0x16(METHOD_FORMAL_PARAMETER)

Specified by:
getMethodFormalParameterIndex in interface IBinaryTypeAnnotation
Returns:
the method formal parameter index

getThrowsTypeIndex

public int getThrowsTypeIndex()
Description copied from interface: IBinaryTypeAnnotation
Applicable for target type 0x17(THROWS)

Specified by:
getThrowsTypeIndex in interface IBinaryTypeAnnotation
Returns:
the throws type index

getTypePath

public int[] getTypePath()
Specified by:
getTypePath in interface IBinaryTypeAnnotation
Returns:
the raw type path data, each pair of ints is a type path entry

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object