Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
Copyright (c) 2000, 2010 IBM Corporation and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html Contributors: IBM Corporation - initial API and implementation /
 
 package org.eclipse.jdt.core;

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)
Noimplement:
This interface is not intended to be implemented by clients.
 
 public interface ISourceReference {
Returns whether this element exists in the model.

Returns:
true if this element exists in the Java model
Since:
2.0
 
 boolean exists();

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
 
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.

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:
SourceRange.isAvailable(ISourceRange)
 
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.

Returns:
the name range associated with this element, or null if not available
Since:
3.7
New to GrepCode? Check out our FAQ X