org.eclipse.jdt.core
Interface ISourceReference

All Known Subinterfaces:
IAnnotation, IClassFile, ICompilationUnit, IField, IImportContainer, IImportDeclaration, IInitializer, ILocalVariable, IMember, IMethod, IPackageDeclaration, IType, ITypeParameter, ITypeRoot
All Known Implementing Classes:
Annotation, AssistAnnotation, AssistCompilationUnit, AssistImportContainer, AssistImportDeclaration, AssistInitializer, AssistPackageDeclaration, AssistSourceField, AssistSourceMethod, AssistSourceType, AssistTypeParameter, BinaryMember, BinaryType, ClassFile, ClassFileWorkingCopy, CompilationUnit, ImportContainer, ImportDeclaration, Initializer, LocalVariable, Member, NamedMember, PackageDeclaration, ResolvedBinaryField, ResolvedBinaryMethod, ResolvedBinaryType, ResolvedSourceField, ResolvedSourceMethod, ResolvedSourceType, SourceField, SourceMethod, SourceRefElement, SourceType, TypeParameter

public interface ISourceReference

Common protocol for Java elements that have associated source code. This set consists of IClassFile, ICompilationUnit, IPackageDeclaration, IImportDeclaration, IImportContainer, IType, IField, IMethod, IInitializer, ITypeParameter, ILocalVariable, and IAnnotation.

Note: For IClassFile, IType and other members derived from a binary type, the implementation returns source iff the element has attached source code.

Source reference elements may be working copies if they were created from a compilation unit that is a working copy.

See Also:
IPackageFragmentRoot.attachSource(org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IProgressMonitor)

Method Summary
 boolean exists()
          Returns whether this element exists in the model.
 java.lang.String getSource()
          Returns the source code associated with this element.
 ISourceRange getSourceRange()
          Returns the source range associated with this element.
 

Method Detail

exists

boolean exists()
Returns whether this element exists in the model.

Returns:
true if this element exists in the Java model
Since:
2.0

getSource

java.lang.String getSource()
                           throws JavaModelException
Returns the source code associated with this element. This extracts the substring from the source buffer containing this source element. This corresponds to the source range that would be returned by getSourceRange.

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

Returns:
the source code, or null if this element has no associated source code
Throws:
JavaModelException - if an exception occurs while accessing its corresponding resource

getSourceRange

ISourceRange getSourceRange()
                            throws JavaModelException
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 null is either returned, or a source range with a -1 offset and a 0 length.

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