Copyright (c) 2000, 2009 IBM Corporation and others. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ SPDX-License-Identifier: EPL-2.0 Contributors: IBM Corporation - initial API and implementation
/******************************************************************************* * Copyright (c) 2000, 2009 IBM Corporation and others. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/
package org.eclipse.jdt.core; import org.eclipse.core.resources.IMarker;
A completion requestor accepts results as they are computed and is aware of source positions to complete the various different results.

This interface may be implemented by clients.

See Also:
  • ICodeAssist
Deprecated:Use CompletionRequestor instead.
/** * A completion requestor accepts results as they are computed and is aware * of source positions to complete the various different results. * <p> * This interface may be implemented by clients. * </p> * * @see ICodeAssist * @deprecated Use {@link CompletionRequestor} instead. */
public interface ICodeCompletionRequestor {
Code assist notification of a class completion.
Params:
  • packageName – Declaring package name of the class.
  • className – Name of the class.
  • completionName – The completion for the class. Can include ';' for imported classes.
  • modifiers – The modifiers of the class.
  • completionStart – The start position of insertion of the name of the class.
  • completionEnd – The end position of insertion of the name of the class. NOTE - All package and type names are presented in their readable form: Package names are in the form "a.b.c". Nested type names are in the qualified form "A.M". The default package is represented by an empty array.
/** * Code assist notification of a class completion. * * @param packageName Declaring package name of the class. * @param className Name of the class. * @param completionName The completion for the class. * Can include ';' for imported classes. * @param modifiers The modifiers of the class. * @param completionStart The start position of insertion of the name of the class. * @param completionEnd The end position of insertion of the name of the class. * * NOTE - All package and type names are presented in their readable form: * Package names are in the form "a.b.c". * Nested type names are in the qualified form "A.M". * The default package is represented by an empty array. */
void acceptClass( char[] packageName, char[] className, char[] completionName, int modifiers, int completionStart, int completionEnd);
Code assist notification of a compilation error detected during completion. @param marker Only problems which are categorized as errors are notified to the requestor, warnings are silently ignored. In case an error got signaled, no other completions might be available, therefore the problem message should be presented to the user. The source positions of the problem are related to the source where it was detected (might be in another compilation unit, if it was indirectly requested during the code assist process). Note: the problem knows its originating file name.
/** * Code assist notification of a compilation error detected during completion. * @param marker Only problems which are categorized as errors are notified to the requestor, * warnings are silently ignored. * In case an error got signaled, no other completions might be available, * therefore the problem message should be presented to the user. * The source positions of the problem are related to the source where it was * detected (might be in another compilation unit, if it was indirectly requested * during the code assist process). * Note: the problem knows its originating file name. */
void acceptError(IMarker marker);
Code assist notification of a field completion.
Params:
  • declaringTypePackageName – Name of the package in which the type that contains this field is declared.
  • declaringTypeName – Name of the type declaring this new field.
  • name – Name of the field.
  • typePackageName – Name of the package in which the type of this field is declared.
  • typeName – Name of the type of this field.
  • completionName – The completion for the field.
  • modifiers – The modifiers of this field.
  • completionStart – The start position of insertion of the name of this field.
  • completionEnd – The end position of insertion of the name of this field. NOTE - All package and type names are presented in their readable form: Package names are in the form "a.b.c". Base types are in the form "int" or "boolean". Array types are in the qualified form "M[]" or "int[]". Nested type names are in the qualified form "A.M". The default package is represented by an empty array.
/** * Code assist notification of a field completion. * * @param declaringTypePackageName Name of the package in which the type that contains this field is declared. * * @param declaringTypeName Name of the type declaring this new field. * * @param name Name of the field. * * @param typePackageName Name of the package in which the type of this field is declared. * * @param typeName Name of the type of this field. * * @param completionName The completion for the field. * * @param modifiers The modifiers of this field. * * @param completionStart The start position of insertion of the name of this field. * * @param completionEnd The end position of insertion of the name of this field. * * NOTE - All package and type names are presented in their readable form: * Package names are in the form "a.b.c". * Base types are in the form "int" or "boolean". * Array types are in the qualified form "M[]" or "int[]". * Nested type names are in the qualified form "A.M". * The default package is represented by an empty array. */
void acceptField( char[] declaringTypePackageName, char[] declaringTypeName, char[] name, char[] typePackageName, char[] typeName, char[] completionName, int modifiers, int completionStart, int completionEnd);
Code assist notification of an interface completion.
Params:
  • packageName – Declaring package name of the interface.
  • interfaceName – Name of the interface.
  • completionName – The completion for the interface. Can include ';' for imported interfaces.
  • modifiers – The modifiers of the interface.
  • completionStart – The start position of insertion of the name of the interface.
  • completionEnd – The end position of insertion of the name of the interface. NOTE - All package and type names are presented in their readable form: Package names are in the form "a.b.c". Nested type names are in the qualified form "A.M". The default package is represented by an empty array.
/** * Code assist notification of an interface completion. * * @param packageName Declaring package name of the interface. * @param interfaceName Name of the interface. * @param completionName The completion for the interface. * Can include ';' for imported interfaces. * @param modifiers The modifiers of the interface. * @param completionStart The start position of insertion of the name of the interface. * @param completionEnd The end position of insertion of the name of the interface. * * NOTE - All package and type names are presented in their readable form: * Package names are in the form "a.b.c". * Nested type names are in the qualified form "A.M". * The default package is represented by an empty array. */
void acceptInterface( char[] packageName, char[] interfaceName, char[] completionName, int modifiers, int completionStart, int completionEnd);
Code assist notification of a keyword completion.
Params:
  • keywordName – The keyword source.
  • completionStart – The start position of insertion of the name of this keyword.
  • completionEnd – The end position of insertion of the name of this keyword.
/** * Code assist notification of a keyword completion. * * @param keywordName The keyword source. * @param completionStart The start position of insertion of the name of this keyword. * @param completionEnd The end position of insertion of the name of this keyword. */
void acceptKeyword(char[] keywordName, int completionStart, int completionEnd);
Code assist notification of a label completion.
Params:
  • labelName – The label source.
  • completionStart – The start position of insertion of the name of this label.
  • completionEnd – The end position of insertion of the name of this label.
/** * Code assist notification of a label completion. * * @param labelName The label source. * @param completionStart The start position of insertion of the name of this label. * @param completionEnd The end position of insertion of the name of this label. */
void acceptLabel(char[] labelName, int completionStart, int completionEnd);
Code assist notification of a local variable completion.
Params:
  • name – Name of the new local variable.
  • typePackageName – Name of the package in which the type of this new local variable is declared.
  • typeName – Name of the type of this new local variable.
  • modifiers – The modifiers of this new local variable.
  • completionStart – The start position of insertion of the name of this new local variable.
  • completionEnd – The end position of insertion of the name of this new local variable. NOTE - All package and type names are presented in their readable form: Package names are in the form "a.b.c". Base types are in the form "int" or "boolean". Array types are in the qualified form "M[]" or "int[]". Nested type names are in the qualified form "A.M". The default package is represented by an empty array.
/** * Code assist notification of a local variable completion. * * @param name Name of the new local variable. * * @param typePackageName Name of the package in which the type of this new local variable is declared. * * @param typeName Name of the type of this new local variable. * * @param modifiers The modifiers of this new local variable. * * @param completionStart The start position of insertion of the name of this new local variable. * * @param completionEnd The end position of insertion of the name of this new local variable. * * NOTE - All package and type names are presented in their readable form: * Package names are in the form "a.b.c". * Base types are in the form "int" or "boolean". * Array types are in the qualified form "M[]" or "int[]". * Nested type names are in the qualified form "A.M". * The default package is represented by an empty array. */
void acceptLocalVariable( char[] name, char[] typePackageName, char[] typeName, int modifiers, int completionStart, int completionEnd);
Code assist notification of a method completion.
Params:
  • declaringTypePackageName – Name of the package in which the type that contains this new method is declared.
  • declaringTypeName – Name of the type declaring this new method.
  • selector – Name of the new method.
  • parameterPackageNames – Names of the packages in which the parameter types are declared. Should contain as many elements as parameterTypeNames.
  • parameterTypeNames – Names of the parameters types. Should contain as many elements as parameterPackageNames.
  • returnTypePackageName – Name of the package in which the return type is declared.
  • returnTypeName – Name of the return type of this new method, should be null for a constructor.
  • completionName – The completion for the method. Can include zero, one or two brackets. If the closing bracket is included, then the cursor should be placed before it.
  • modifiers – The modifiers of this new method.
  • completionStart – The start position of insertion of the name of this new method.
  • completionEnd – The end position of insertion of the name of this new method. NOTE - All package and type names are presented in their readable form: Package names are in the form "a.b.c". Base types are in the form "int" or "boolean". Array types are in the qualified form "M[]" or "int[]". Nested type names are in the qualified form "A.M". The default package is represented by an empty array. NOTE: parameter names can be retrieved from the source model after the user selects a specific method.
/** * Code assist notification of a method completion. * * @param declaringTypePackageName Name of the package in which the type that contains this new method is declared. * * @param declaringTypeName Name of the type declaring this new method. * * @param selector Name of the new method. * * @param parameterPackageNames Names of the packages in which the parameter types are declared. * Should contain as many elements as parameterTypeNames. * * @param parameterTypeNames Names of the parameters types. * Should contain as many elements as parameterPackageNames. * * @param returnTypePackageName Name of the package in which the return type is declared. * * @param returnTypeName Name of the return type of this new method, should be <code>null</code> for a constructor. * * @param completionName The completion for the method. * Can include zero, one or two brackets. If the closing bracket is included, then the cursor should be placed before it. * * @param modifiers The modifiers of this new method. * * @param completionStart The start position of insertion of the name of this new method. * * @param completionEnd The end position of insertion of the name of this new method. * * NOTE - All package and type names are presented in their readable form: * Package names are in the form "a.b.c". * Base types are in the form "int" or "boolean". * Array types are in the qualified form "M[]" or "int[]". * Nested type names are in the qualified form "A.M". * The default package is represented by an empty array. * * NOTE: parameter names can be retrieved from the source model after the user selects a specific method. */
void acceptMethod( char[] declaringTypePackageName, char[] declaringTypeName, char[] selector, char[][] parameterPackageNames, char[][] parameterTypeNames, char[] returnTypePackageName, char[] returnTypeName, char[] completionName, int modifiers, int completionStart, int completionEnd);
Code assist notification of a modifier completion.
Params:
  • modifierName – The new modifier.
  • completionStart – The start position of insertion of the name of this new modifier.
  • completionEnd – The end position of insertion of the name of this new modifier.
/** * Code assist notification of a modifier completion. * * @param modifierName The new modifier. * @param completionStart The start position of insertion of the name of this new modifier. * @param completionEnd The end position of insertion of the name of this new modifier. */
void acceptModifier(char[] modifierName, int completionStart, int completionEnd);
Code assist notification of a package completion.
Params:
  • packageName – The package name.
  • completionName – The completion for the package. Can include '.*;' for imports.
  • completionStart – The start position of insertion of the name of this new package.
  • completionEnd – The end position of insertion of the name of this new package. NOTE - All package names are presented in their readable form: Package names are in the form "a.b.c". The default package is represented by an empty array.
/** * Code assist notification of a package completion. * * @param packageName The package name. * @param completionName The completion for the package. * Can include '.*;' for imports. * @param completionStart The start position of insertion of the name of this new package. * @param completionEnd The end position of insertion of the name of this new package. * * NOTE - All package names are presented in their readable form: * Package names are in the form "a.b.c". * The default package is represented by an empty array. */
void acceptPackage( char[] packageName, char[] completionName, int completionStart, int completionEnd);
Code assist notification of a type completion.
Params:
  • packageName – Declaring package name of the type.
  • typeName – Name of the type.
  • completionName – The completion for the type. Can include ';' for imported types.
  • completionStart – The start position of insertion of the name of the type.
  • completionEnd – The end position of insertion of the name of the type. NOTE - All package and type names are presented in their readable form: Package names are in the form "a.b.c". Nested type names are in the qualified form "A.M". The default package is represented by an empty array.
/** * Code assist notification of a type completion. * * @param packageName Declaring package name of the type. * @param typeName Name of the type. * @param completionName The completion for the type. * Can include ';' for imported types. * @param completionStart The start position of insertion of the name of the type. * @param completionEnd The end position of insertion of the name of the type. * * NOTE - All package and type names are presented in their readable form: * Package names are in the form "a.b.c". * Nested type names are in the qualified form "A.M". * The default package is represented by an empty array. */
void acceptType( char[] packageName, char[] typeName, char[] completionName, int completionStart, int completionEnd); }