Interface ICodeAssist

    • Method Detail

      • codeComplete

        void codeComplete​(int offset,
                          ICodeCompletionRequestor requestor)
                   throws JavaModelException
        Deprecated.
        Performs code completion at the given offset position in this compilation 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 compilation unit.
        Parameters:
        offset - the given offset position
        requestor - the given completion requestor
        Throws:
        JavaModelException - if code assist could not be performed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • The position specified is < -1 or is greater than this compilation unit's source length (INDEX_OUT_OF_BOUNDS)
        IllegalArgumentException - if requestor is null
      • codeComplete

        void codeComplete​(int offset,
                          ICompletionRequestor requestor)
                   throws JavaModelException
        Deprecated.
        Performs code completion at the given offset position in this compilation 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 compilation unit.
        Parameters:
        offset - the given offset position
        requestor - the given completion requestor
        Throws:
        JavaModelException - if code assist could not be performed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • The position specified is < -1 or is greater than this compilation unit's source length (INDEX_OUT_OF_BOUNDS)
        IllegalArgumentException - if requestor is null
        Since:
        2.0
      • codeComplete

        void codeComplete​(int offset,
                          CompletionRequestor requestor)
                   throws JavaModelException
        Performs code completion at the given offset position in this compilation 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 compilation unit.

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

        void codeComplete​(int offset,
                          CompletionRequestor requestor,
                          IProgressMonitor monitor)
                   throws JavaModelException
        Performs code completion at the given offset position in this compilation 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 compilation unit.

        If IProgressMonitor is not null then some proposals which can be very long to compute are proposed. To avoid that the code assist operation take too much time a IProgressMonitor which automatically cancel the code assist operation when a specified amount of time is reached could be used.

         new IProgressMonitor() {
             private final static int TIMEOUT = 500; //ms
             private long endTime;
             public void beginTask(String name, int totalWork) {
                 fEndTime= System.currentTimeMillis() + TIMEOUT;
             }
             public boolean isCanceled() {
                 return endTime <= System.currentTimeMillis();
             }
             ...
         };
         

        Parameters:
        offset - the given offset position
        requestor - the given completion requestor
        monitor - the progress monitor used to report progress
        Throws:
        JavaModelException - if code assist could not be performed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • The position specified is < -1 or is greater than this compilation unit's source length (INDEX_OUT_OF_BOUNDS)
        IllegalArgumentException - if requestor is null
        Since:
        3.5
      • codeComplete

        void codeComplete​(int offset,
                          ICompletionRequestor requestor,
                          WorkingCopyOwner owner)
                   throws JavaModelException
        Performs code completion at the given offset position in this compilation 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 compilation 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 compilation units in the workspace.

        Note that if a working copy is empty, it will be as if the original compilation 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 compilation units
        Throws:
        JavaModelException - if code assist could not be performed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • The position specified is < -1 or is greater than this compilation unit's source length (INDEX_OUT_OF_BOUNDS)
        IllegalArgumentException - if requestor is null
        Since:
        3.0
      • codeComplete

        void codeComplete​(int offset,
                          CompletionRequestor requestor,
                          WorkingCopyOwner owner)
                   throws JavaModelException
        Performs code completion at the given offset position in this compilation 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 compilation 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 compilation units in the workspace.

        Note that if a working copy is empty, it will be as if the original compilation 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 compilation units
        Throws:
        JavaModelException - if code assist could not be performed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • The position specified is < -1 or is greater than this compilation unit's source length (INDEX_OUT_OF_BOUNDS)
        IllegalArgumentException - if requestor is null
        Since:
        3.0
      • codeComplete

        void codeComplete​(int offset,
                          CompletionRequestor requestor,
                          WorkingCopyOwner owner,
                          IProgressMonitor monitor)
                   throws JavaModelException
        Performs code completion at the given offset position in this compilation 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 compilation 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 compilation units in the workspace.

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

        If IProgressMonitor is not null then some proposals which can be very long to compute are proposed. To avoid that the code assist operation take too much time a IProgressMonitor which automatically cancel the code assist operation when a specified amount of time is reached could be used.

         new IProgressMonitor() {
             private final static int TIMEOUT = 500; //ms
             private long endTime;
             public void beginTask(String name, int totalWork) {
                 fEndTime= System.currentTimeMillis() + TIMEOUT;
             }
             public boolean isCanceled() {
                 return endTime <= System.currentTimeMillis();
             }
             ...
         };
         

        Parameters:
        offset - the given offset position
        requestor - the given completion requestor
        owner - the owner of working copies that take precedence over their original compilation units
        monitor - the progress monitor used to report progress
        Throws:
        JavaModelException - if code assist could not be performed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • The position specified is < -1 or is greater than this compilation unit's source length (INDEX_OUT_OF_BOUNDS)
        IllegalArgumentException - if requestor is null
        Since:
        3.5
      • codeSelect

        IJavaElement[] codeSelect​(int offset,
                                  int length)
                           throws JavaModelException
        Returns the Java elements corresponding to the given selected text in this compilation 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 Java elements corresponding to the given selected text
        Throws:
        JavaModelException - if code resolve could not be performed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • The range specified is not within this element's source range (INDEX_OUT_OF_BOUNDS)
      • codeSelect

        IJavaElement[] codeSelect​(int offset,
                                  int length,
                                  WorkingCopyOwner owner)
                           throws JavaModelException
        Returns the Java elements corresponding to the given selected text in this compilation 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 compilation 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 compilation 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 compilation units
        Returns:
        the Java elements corresponding to the given selected text
        Throws:
        JavaModelException - if code resolve could not be performed. Reasons include:
        • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
        • The range specified is not within this element's source range (INDEX_OUT_OF_BOUNDS)
        Since:
        3.0