org.aspectj.org.eclipse.jdt.internal.core
Class TypeParameter

java.lang.Object
  extended by PlatformObject
      extended by org.aspectj.org.eclipse.jdt.internal.core.JavaElement
          extended by org.aspectj.org.eclipse.jdt.internal.core.SourceRefElement
              extended by org.aspectj.org.eclipse.jdt.internal.core.TypeParameter
All Implemented Interfaces:
IJavaElement, ISourceReference, ITypeParameter
Direct Known Subclasses:
AssistTypeParameter

public class TypeParameter
extends SourceRefElement
implements ITypeParameter


Field Summary
protected  java.lang.String name
           
 
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.core.SourceRefElement
occurrenceCount
 
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.core.JavaElement
JEM_ANNOTATION, JEM_CLASSFILE, JEM_COMPILATIONUNIT, JEM_COUNT, JEM_ESCAPE, JEM_FIELD, JEM_IMPORTDECLARATION, JEM_INITIALIZER, JEM_JAVAPROJECT, JEM_LOCALVARIABLE, JEM_METHOD, JEM_PACKAGEDECLARATION, JEM_PACKAGEFRAGMENT, JEM_PACKAGEFRAGMENTROOT, JEM_TYPE, JEM_TYPE_PARAMETER, NO_ELEMENTS, NO_INFO, parent
 
Fields inherited from interface org.aspectj.org.eclipse.jdt.core.IJavaElement
ANNOTATION, CLASS_FILE, COMPILATION_UNIT, FIELD, IMPORT_CONTAINER, IMPORT_DECLARATION, INITIALIZER, JAVA_MODEL, JAVA_PROJECT, LOCAL_VARIABLE, METHOD, PACKAGE_DECLARATION, PACKAGE_FRAGMENT, PACKAGE_FRAGMENT_ROOT, TYPE, TYPE_PARAMETER
 
Constructor Summary
TypeParameter(JavaElement parent, java.lang.String name)
           
 
Method Summary
 boolean equals(java.lang.Object o)
          Returns true if this handle represents the same Java element as the given handle.
 java.lang.String[] getBounds()
          Returns the names of the class and interface bounds of this type parameter.
 java.lang.String[] getBoundsSignatures()
          Returns the signatures for this type parameter's bounds.
 IClassFile getClassFile()
           
 IMember getDeclaringMember()
          Returns the declaring member of this type parameter.
 java.lang.String getElementName()
          Returns the name of this element.
 int getElementType()
          Returns this element's kind encoded as an integer.
protected  char getHandleMementoDelimiter()
          Returns the char that marks the start of this handles contribution to a memento.
 ISourceRange getNameRange()
          Returns the name range associated with this element.
 ISourceRange getSourceRange()
          Returns the source range associated with this element.
 ITypeRoot getTypeRoot()
          Returns the Java type root in which this type parameter is declared.
protected  void toStringName(java.lang.StringBuffer buffer)
          Debugging purposes
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.SourceRefElement
closing, copy, createElementInfo, delete, findNode, generateInfos, getAnnotation, getAnnotations, getCompilationUnit, getCorrespondingResource, getHandleFromMemento, getHandleMemento, getHandleUpdatingCountFromMemento, getOccurrenceCount, getOpenableParent, getPath, getSource, getUnderlyingResource, hasChildren, isStructureKnown, move, rename, resource
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.JavaElement
close, escapeMementoName, exists, getAncestor, getAttachedJavadoc, getChildren, getChildrenOfType, getElementInfo, getElementInfo, getHandleFromMemento, getHandleIdentifier, getHandleMemento, getJavadocBaseLocation, getJavaModel, getJavaProject, getLibraryJavadocLocation, getOpenable, getParent, getPrimaryElement, getPrimaryElement, getResource, getSchedulingRule, getSourceElementAt, getSourceMapper, getURLContents, hashCode, isAncestorOf, isReadOnly, newDoesNotExistStatus, newJavaModelException, newNotPresentException, openWhenClosed, readableName, resolved, tabString, toDebugString, toString, toString, toStringAncestors, toStringChildren, toStringInfo, toStringInfo, toStringWithAncestors, toStringWithAncestors, unresolved
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.IJavaElement
exists, getAncestor, getAttachedJavadoc, getCorrespondingResource, getHandleIdentifier, getJavaModel, getJavaProject, getOpenable, getParent, getPath, getPrimaryElement, getResource, getSchedulingRule, getUnderlyingResource, isReadOnly, isStructureKnown
 
Methods inherited from interface org.aspectj.org.eclipse.jdt.core.ISourceReference
exists, getSource
 

Field Detail

name

protected java.lang.String name
Constructor Detail

TypeParameter

public TypeParameter(JavaElement parent,
                     java.lang.String name)
Method Detail

equals

public boolean equals(java.lang.Object o)
Description copied from class: JavaElement
Returns true if this handle represents the same Java element as the given handle. By default, two handles represent the same element if they are identical or if they represent the same type of element, have equal names, parents, and occurrence counts.

If a subclass has other requirements for equality, this method must be overridden.

Overrides:
equals in class SourceRefElement
See Also:
Object.equals(java.lang.Object)

getBounds

public java.lang.String[] getBounds()
                             throws JavaModelException
Description copied from interface: ITypeParameter
Returns the names of the class and interface bounds of this type parameter. Returns an empty array if this type parameter has no bounds. A bound name is the name as it appears in the source (without the extends keyword) if the type parameter comes from a compilation unit. It is the dot-separated fully qualified name of the bound if the type parameter comes from a class file.

Specified by:
getBounds in interface ITypeParameter
Returns:
the names of the bounds
Throws:
JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource

getBoundsSignatures

public java.lang.String[] getBoundsSignatures()
                                       throws JavaModelException
Description copied from interface: ITypeParameter
Returns the signatures for this type parameter's bounds. The type parameter may have been declared as part of a type or a method. The signatures represent only the individual bounds and do not include the type variable name or the extends keyword. The signatures may be either unresolved (for source types) or resolved (for binary types). See Signature for details.

Specified by:
getBoundsSignatures in interface ITypeParameter
Returns:
the signatures for the bounds of this formal type parameter
Throws:
JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource.
See Also:
Signature

getDeclaringMember

public IMember getDeclaringMember()
Description copied from interface: ITypeParameter
Returns the declaring member of this type parameter. This can be either an IType or an IMethod.

This is a handle-only method.

Specified by:
getDeclaringMember in interface ITypeParameter
Returns:
the declaring member of this type parameter.

getElementName

public java.lang.String getElementName()
Description copied from interface: IJavaElement
Returns the name of this element. This is a handle-only method.

Specified by:
getElementName in interface IJavaElement
Overrides:
getElementName in class JavaElement
Returns:
the element name
See Also:
IAdaptable

getElementType

public int getElementType()
Description copied from interface: IJavaElement
Returns this element's kind encoded as an integer. This is a handle-only method.

Specified by:
getElementType in interface IJavaElement
Returns:
the kind of element; one of the constants declared in IJavaElement
See Also:
IJavaElement

getHandleMementoDelimiter

protected char getHandleMementoDelimiter()
Description copied from class: JavaElement
Returns the char that marks the start of this handles contribution to a memento.

Specified by:
getHandleMementoDelimiter in class JavaElement

getNameRange

public ISourceRange getNameRange()
                          throws JavaModelException
Description copied from interface: ISourceReference
Returns the name range associated with this element.

If the element is an IMember, it returns the source range of this member's simple name, or null if this member does not have a name (for example, an initializer), or if this member does not have associated source code (for example, a binary type).

If this element is an IImportDeclaration, the source range of this import declaration's name, or null if this import declaration does not have associated source code (for example, a binary type).
The source range for the name includes the trailing '*' if the call to IImportDeclaration.isOnDemand() returns true.

If this element is an IPackageDeclaration, the source range of this package declaration's name, or null if this package declaration does not have associated source code (for example, a binary type).

If this element is an IAnnotation, the source range of this annotation's name, or null if this annotation does not have associated source code (for example, in a binary type).

If this element is an ITypeParameter, the source range of this type parameter's name, or null if this type parameter does not have associated source code (for example, in a binary type).

If this element is an ITypeRoot or IImportContainer, it returns null.

Specified by:
getNameRange in interface ISourceReference
Returns:
the name range associated with this element, or null if not available
Throws:
JavaModelException

getSourceRange

public ISourceRange getSourceRange()
                            throws JavaModelException
Description copied from interface: ISourceReference
Returns the source range associated with this element.

For class files, this returns the range of the entire compilation unit associated with the class file (if there is one).

If this element has no associated source code, either null is returned, or a source range with a -1 offset and a 0 length. SourceRange.isAvailable(ISourceRange) can be used to detect that case.

Specified by:
getSourceRange in interface ISourceReference
Overrides:
getSourceRange in class SourceRefElement
Returns:
the source range, or either null or [-1, 0] if this element has no associated source code
Throws:
JavaModelException - if an exception occurs while accessing its corresponding resource
See Also:
ISourceReference

getClassFile

public IClassFile getClassFile()
Overrides:
getClassFile in class JavaElement
See Also:
IMember

getTypeRoot

public ITypeRoot getTypeRoot()
Returns the Java type root in which this type parameter is declared.

This is a handle-only method.

Specified by:
getTypeRoot in interface ITypeParameter
Returns:
the Java type root in which this type parameter is declared
Since:
3.7

toStringName

protected void toStringName(java.lang.StringBuffer buffer)
Description copied from class: JavaElement
Debugging purposes

Overrides:
toStringName in class SourceRefElement