Class SourceTypeElementInfo

All Implemented Interfaces:
Cloneable, IDependent, IGenericType, ISourceType

public class SourceTypeElementInfo extends AnnotatableInfo implements ISourceType
Element info for an IType element that originated from source.
  • Field Details

    • NO_IMPORTS

      protected static final ISourceImport[] NO_IMPORTS
    • NO_INITIALIZERS

      protected static final InitializerElementInfo[] NO_INITIALIZERS
    • NO_FIELDS

      protected static final SourceField[] NO_FIELDS
    • NO_METHODS

      protected static final SourceMethod[] NO_METHODS
    • NO_TYPES

      protected static final SourceType[] NO_TYPES
    • children

      protected IJavaElement[] children
    • superclassName

      protected char[] superclassName
      The name of the superclass for this type. This name is fully qualified for binary types and is NOT always fully qualified for source types.
    • superInterfaceNames

      protected char[][] superInterfaceNames
      The names of the interfaces this type implements or extends. These names are fully qualified in the case of a binary type, and are NOT always fully qualified in the case of a source type
    • permittedTypeNames

      protected char[][] permittedTypeNames
    • handle

      protected IType handle
      Backpointer to my type handle - useful for translation from info to handle.
    • typeParameters

      protected ITypeParameter[] typeParameters
    • categories

      protected HashMap<IJavaElement,​String[]> categories
    • flags

      protected int flags
      The modifiers associated with this member.
      See Also:
      ClassFileConstants
    • sourceRangeStart

      protected int sourceRangeStart
    • sourceRangeEnd

      protected int sourceRangeEnd
  • Constructor Details

    • SourceTypeElementInfo

      public SourceTypeElementInfo()
  • Method Details

    • addCategories

      protected void addCategories(IJavaElement element, char[][] elementCategories)
    • getCategories

      public HashMap<IJavaElement,​String[]> getCategories()
    • getChildren

      public IJavaElement[] getChildren()
      Overrides:
      getChildren in class JavaElementInfo
    • getEnclosingType

      public ISourceType getEnclosingType()
      Returns the ISourceType that is the enclosing type for this type, or null if this type is a top level type.
      Specified by:
      getEnclosingType in interface ISourceType
    • getFields

      public ISourceField[] getFields()
      Description copied from interface: ISourceType
      Answer the receiver's fields. NOTE: Multiple fields with the same name can exist in the result.
      Specified by:
      getFields in interface ISourceType
      See Also:
      ISourceType
    • getFieldHandles

      public SourceField[] getFieldHandles()
    • getFileName

      public char[] getFileName()
      Description copied from interface: IDependent
      Answer the file name which defines the type. The path part (optional) must be separated from the actual file proper name by a separator suitable for the type (java.io.File.separator for example), e.g. "c:\\source\\com\\p\\X.java" or "/com/p/Y.java". The path to the zip or jar file (optional) must be separated from the actual path part by JAR_FILE_ENTRY_SEPARATOR, e.g. "c:\\lib\\some.jar|/com/p/X.class" or "/lib/some.zip|/com/q/Y.class". The proper file name includes the suffix extension (e.g. ".java") e.g. "c:/org/aspectj/org/eclipse/jdt/internal/compileri/env/IDependent.java" Return null if no file defines the type.
      Specified by:
      getFileName in interface IDependent
      See Also:
      IDependent.getFileName()
    • getHandle

      public IType getHandle()
      Returns the handle for this type info
    • getInitializers

      public InitializerElementInfo[] getInitializers()
    • getInterfaceNames

      public char[][] getInterfaceNames()
      Description copied from interface: ISourceType
      Answer the unresolved names of the receiver's interfaces or null if the array is empty. A name is a simple name or a qualified, dot separated name. For example, Hashtable or java.util.Hashtable.
      Specified by:
      getInterfaceNames in interface ISourceType
      See Also:
      ISourceType
    • getPermittedSubtypeNames

      public char[][] getPermittedSubtypeNames()
      Description copied from interface: ISourceType
      Answer the unresolved names of the receiver's permitted sub types or null if the array is empty. A name is a simple name or a qualified, dot separated name. For example, Hashtable or java.util.Hashtable.
      Specified by:
      getPermittedSubtypeNames in interface ISourceType
      See Also:
      ISourceType
    • getMemberTypes

      public ISourceType[] getMemberTypes()
      Description copied from interface: ISourceType
      Answer the receiver's member types.
      Specified by:
      getMemberTypes in interface ISourceType
      See Also:
      ISourceType
    • getMemberTypeHandles

      public SourceType[] getMemberTypeHandles()
    • getMethods

      public ISourceMethod[] getMethods()
      Description copied from interface: ISourceType
      Answer the receiver's methods. NOTE: Multiple methods with the same name & parameter types can exist in the result.
      Specified by:
      getMethods in interface ISourceType
      See Also:
      ISourceType
    • getMethodHandles

      public SourceMethod[] getMethodHandles()
    • getName

      public char[] getName()
      Description copied from interface: ISourceType
      Answer the simple source name of the receiver.
      Specified by:
      getName in interface ISourceType
      See Also:
      ISourceType.getName()
    • getSuperclassName

      public char[] getSuperclassName()
      Description copied from interface: ISourceType
      Answer the unresolved name of the receiver's superclass or null if it does not have one. The name is a simple name or a qualified, dot separated name. For example, Hashtable or java.util.Hashtable.
      Specified by:
      getSuperclassName in interface ISourceType
      See Also:
      ISourceType
    • getTypeParameterBounds

      public char[][][] getTypeParameterBounds()
      Description copied from interface: ISourceType
      Answer the array of bound names of the receiver's type parameters.
      Specified by:
      getTypeParameterBounds in interface ISourceType
    • getTypeParameterNames

      public char[][] getTypeParameterNames()
      Description copied from interface: ISourceType
      Answer the names of the receiver's type parameters.
      Specified by:
      getTypeParameterNames in interface ISourceType
    • isBinaryType

      public boolean isBinaryType()
      Description copied from interface: IGenericType
      Answer whether the receiver contains the resolved binary form or the unresolved source form of the type.
      Specified by:
      isBinaryType in interface IGenericType
      See Also:
      ISourceType
    • isAnonymous

      public boolean isAnonymous()
      Description copied from interface: ISourceType
      Answer whether the receiver type is anonymous
      Specified by:
      isAnonymous in interface ISourceType
    • isAnonymousMember

      public boolean isAnonymousMember()
    • setHandle

      protected void setHandle(IType handle)
      Sets the handle for this type info
    • setSuperclassName

      protected void setSuperclassName(char[] superclassName)
      Sets the (unresolved) name of this type's superclass
    • setSuperInterfaceNames

      protected void setSuperInterfaceNames(char[][] superInterfaceNames)
      Sets the (unresolved) names of the interfaces this type implements or extends
    • setPermittedSubtypeNames

      protected void setPermittedSubtypeNames(char[][] permittedTypeNames)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getModifiers

      public int getModifiers()
      See Also:
      IGenericType.getModifiers(), IGenericMethod.getModifiers(), IGenericField.getModifiers()
    • setFlags

      protected void setFlags(int flags)
    • getDeclarationSourceEnd

      public int getDeclarationSourceEnd()
      See Also:
      ISourceType.getDeclarationSourceEnd(), ISourceMethod.getDeclarationSourceEnd(), ISourceField.getDeclarationSourceEnd()
    • getDeclarationSourceStart

      public int getDeclarationSourceStart()
      See Also:
      ISourceType.getDeclarationSourceStart(), ISourceMethod.getDeclarationSourceStart(), ISourceField.getDeclarationSourceStart()
    • getSourceRange

      protected ISourceRange getSourceRange()
    • setSourceRangeEnd

      protected void setSourceRangeEnd(int end)
    • setSourceRangeStart

      protected void setSourceRangeStart(int start)