org.eclipse.wst.jsdt.core
Interface ICodeAssist

All Known Subinterfaces:
IClassFile, IJavaScriptUnit, ITypeRoot

public interface ICodeAssist

Common protocol for JavaScript elements that support source code assist and code resolve.

This interface is not intended to be implemented by clients.

Provisional API: This class/interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.


Method Summary
 void codeComplete(int offset, CompletionRequestor requestor)
          Performs code completion at the given offset position in this javaScript unit, reporting results to the given completion requestor.
 void codeComplete(int offset, CompletionRequestor requestor, WorkingCopyOwner owner)
          Performs code completion at the given offset position in this javaScript unit, reporting results to the given completion requestor.
 IJavaScriptElement[] codeSelect(int offset, int length)
          Returns the JavaScript elements corresponding to the given selected text in this javaScript unit.
 IJavaScriptElement[] codeSelect(int offset, int length, WorkingCopyOwner owner)
          Returns the JavaScript elements corresponding to the given selected text in this javaScript unit.
 

Method Detail

codeComplete

void codeComplete(int offset,
                  CompletionRequestor requestor)
                  throws JavaScriptModelException
Performs code completion at the given offset position in this javaScript unit, reporting results to the given completion requestor. The offset is the 0-based index of the character, after which code assist is desired. An offset of -1 indicates to code assist at the beginning of this javaScript unit.

Parameters:
offset - the given offset position
requestor - the given completion requestor
Throws:
JavaScriptModelException - if code assist could not be performed. Reasons include:
  • This JavaScript element does not exist (ELEMENT_DOES_NOT_EXIST)
  • The position specified is < -1 or is greater than this javaScript unit's source length (INDEX_OUT_OF_BOUNDS)
java.lang.IllegalArgumentException - if requestor is null

codeComplete

void codeComplete(int offset,
                  CompletionRequestor requestor,
                  WorkingCopyOwner owner)
                  throws JavaScriptModelException
Performs code completion at the given offset position in this javaScript unit, reporting results to the given completion requestor. The offset is the 0-based index of the character, after which code assist is desired. An offset of -1 indicates to code assist at the beginning of this javaScript unit. It considers types in the working copies with the given owner first. In other words, the owner's working copies will take precedence over their original javaScript units in the workspace.

Note that if a working copy is empty, it will be as if the original javaScript unit had been deleted.

Parameters:
offset - the given offset position
requestor - the given completion requestor
owner - the owner of working copies that take precedence over their original javaScript units
Throws:
JavaScriptModelException - if code assist could not be performed. Reasons include:
  • This JavaScript element does not exist (ELEMENT_DOES_NOT_EXIST)
  • The position specified is < -1 or is greater than this javaScript unit's source length (INDEX_OUT_OF_BOUNDS)
java.lang.IllegalArgumentException - if requestor is null

codeSelect

IJavaScriptElement[] codeSelect(int offset,
                                int length)
                                throws JavaScriptModelException
Returns the JavaScript elements corresponding to the given selected text in this javaScript unit. The offset is the 0-based index of the first selected character. The length is the number of selected characters.

Note that if the length is 0 and the offset is inside an identifier or the index just after an identifier then this identifier is considered as the selection.

Parameters:
offset - the given offset position
length - the number of selected characters
Returns:
the JavaScript elements corresponding to the given selected text
Throws:
JavaScriptModelException - if code resolve could not be performed. Reasons include:
  • This JavaScript element does not exist (ELEMENT_DOES_NOT_EXIST)
  • The range specified is not within this element's source range (INDEX_OUT_OF_BOUNDS)

codeSelect

IJavaScriptElement[] codeSelect(int offset,
                                int length,
                                WorkingCopyOwner owner)
                                throws JavaScriptModelException
Returns the JavaScript elements corresponding to the given selected text in this javaScript unit. The offset is the 0-based index of the first selected character. The length is the number of selected characters. It considers types in the working copies with the given owner first. In other words, the owner's working copies will take precedence over their original javaScript units in the workspace.

Note that if the length is 0 and the offset is inside an identifier or the index just after an identifier then this identifier is considered as the selection.

Note that if a working copy is empty, it will be as if the original javaScript unit had been deleted.

Parameters:
offset - the given offset position
length - the number of selected characters
owner - the owner of working copies that take precedence over their original javaScript units
Returns:
the JavaScript elements corresponding to the given selected text
Throws:
JavaScriptModelException - if code resolve could not be performed. Reasons include:
  • This JavaScript element does not exist (ELEMENT_DOES_NOT_EXIST)
  • The range specified is not within this element's source range (INDEX_OUT_OF_BOUNDS)