public class SelectionRequestor extends java.lang.Object implements ISelectionRequestor
ISelectionRequestor to assist with
code resolve in a compilation unit. Translates names to elements.| Modifier and Type | Field and Description |
|---|---|
protected int |
elementIndex |
protected IJavaElement[] |
elements |
protected HandleFactory |
handleFactory |
protected NameLookup |
nameLookup |
protected Openable |
openable |
| Constructor and Description |
|---|
SelectionRequestor(NameLookup nameLookup,
Openable openable)
Creates a selection requestor that uses that given
name lookup facility to resolve names.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
acceptBinaryMethod(IType type,
char[] selector,
char[][] parameterPackageNames,
char[][] parameterTypeNames,
java.lang.String[] parameterSignatures,
char[][] typeParameterNames,
char[][][] typeParameterBoundNames,
char[] uniqueKey,
boolean isConstructor)
Resolve the binary method
fix for 1FWFT6Q
|
void |
acceptError(CategorizedProblem error)
Code assist notification of a compilation error detected during selection.
|
void |
acceptField(char[] declaringTypePackageName,
char[] declaringTypeName,
char[] name,
boolean isDeclaration,
char[] uniqueKey,
int start,
int end)
Resolve the field.
|
void |
acceptLocalField(FieldBinding fieldBinding) |
void |
acceptLocalMethod(MethodBinding methodBinding) |
void |
acceptLocalMethodTypeParameter(TypeVariableBinding typeVariableBinding) |
void |
acceptLocalType(TypeBinding typeBinding) |
void |
acceptLocalTypeParameter(TypeVariableBinding typeVariableBinding) |
void |
acceptLocalVariable(LocalVariableBinding binding,
ICompilationUnit unit) |
void |
acceptMethod(char[] declaringTypePackageName,
char[] declaringTypeName,
java.lang.String enclosingDeclaringTypeSignature,
char[] selector,
char[][] parameterPackageNames,
char[][] parameterTypeNames,
java.lang.String[] parameterSignatures,
char[][] typeParameterNames,
char[][][] typeParameterBoundNames,
boolean isConstructor,
boolean isDeclaration,
char[] uniqueKey,
int start,
int end)
Resolve the method
|
protected void |
acceptMethodDeclaration(IType type,
char[] selector,
int start,
int end) |
void |
acceptMethodTypeParameter(char[] declaringTypePackageName,
char[] declaringTypeName,
char[] selector,
int selectorStart,
int selectorEnd,
char[] typeParameterName,
boolean isDeclaration,
int start,
int end)
Code assist notification of a type parameter selection.
|
void |
acceptModule(char[] moduleName,
char[] uniqueKey,
int start,
int end)
Code assist notification of a module selection.
|
void |
acceptPackage(char[] packageName)
Resolve the package
|
protected void |
acceptSourceMethod(IType type,
char[] selector,
char[][] parameterPackageNames,
char[][] parameterTypeNames,
java.lang.String[] parameterSignatures,
char[][] typeParameterNames,
char[][][] typeParameterBoundNames,
char[] uniqueKey)
Resolve the source method
fix for 1FWFT6Q
|
void |
acceptType(char[] packageName,
char[] typeName,
int modifiers,
boolean isDeclaration,
char[] uniqueKey,
int start,
int end)
Resolve the type.
|
void |
acceptType(IType type)
Resolve the type.
|
void |
acceptTypeParameter(char[] declaringTypePackageName,
char[] declaringTypeName,
char[] typeParameterName,
boolean isDeclaration,
int start,
int end)
Code assist notification of a type parameter selection.
|
protected void |
addElement(IJavaElement element) |
protected IJavaElement |
findLocalElement(int pos) |
protected IJavaElement |
findLocalElement(int pos,
MethodScope scope) |
IJavaElement |
findMethodFromBinding(MethodBinding method,
java.lang.String[] signatures,
ReferenceBinding declaringClass)
This method returns an IMethod element from the given method and declaring type bindings.
|
IJavaElement[] |
getElements()
Returns the resolved elements.
|
protected IModuleDescription |
resolveModule(char[] moduleName) |
protected IType |
resolveType(char[] packageName,
char[] typeName,
int acceptFlags)
Resolve the type
|
protected IType |
resolveTypeByLocation(char[] packageName,
char[] typeName,
int acceptFlags,
int start,
int end) |
protected NameLookup nameLookup
protected Openable openable
protected IJavaElement[] elements
protected int elementIndex
protected HandleFactory handleFactory
public SelectionRequestor(NameLookup nameLookup, Openable openable)
protected void acceptBinaryMethod(IType type, char[] selector, char[][] parameterPackageNames, char[][] parameterTypeNames, java.lang.String[] parameterSignatures, char[][] typeParameterNames, char[][][] typeParameterBoundNames, char[] uniqueKey, boolean isConstructor)
public void acceptModule(char[] moduleName,
char[] uniqueKey,
int start,
int end)
ISelectionRequestoracceptModule in interface ISelectionRequestormoduleName - name of the moduleuniqueKey - unique key of this modulestart - Start of the selectionend - End of the selectionpublic void acceptType(char[] packageName,
char[] typeName,
int modifiers,
boolean isDeclaration,
char[] uniqueKey,
int start,
int end)
acceptType in interface ISelectionRequestorpackageName - char[]
Declaring package name of the type.typeName - char[]
Name of the type.isDeclaration - boolean
Answer if the selected type is a declarationuniqueKey - genric type signature of the selected type if it is a
parameterized typestart - Start of the selectionend - End of the selection
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.public void acceptType(IType type)
public void acceptError(CategorizedProblem error)
ISelectionRequestoracceptError in interface ISelectionRequestorerror - CategorizedProblem
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.ISelectionRequestor.acceptError(org.aspectj.org.eclipse.jdt.core.compiler.CategorizedProblem)public void acceptField(char[] declaringTypePackageName,
char[] declaringTypeName,
char[] name,
boolean isDeclaration,
char[] uniqueKey,
int start,
int end)
acceptField in interface ISelectionRequestordeclaringTypePackageName - char[]
Name of the package in which the type that contains this field is declared.declaringTypeName - char[]
Name of the type declaring this new field.name - char[]
Name of the field.isDeclaration - boolean
Answer if the selected field is a declarationuniqueKey - unique key of this fieldstart - Start of the selectionend - End of the selection
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.public void acceptLocalField(FieldBinding fieldBinding)
public void acceptLocalMethod(MethodBinding methodBinding)
public void acceptLocalType(TypeBinding typeBinding)
public void acceptLocalTypeParameter(TypeVariableBinding typeVariableBinding)
public void acceptLocalMethodTypeParameter(TypeVariableBinding typeVariableBinding)
public void acceptLocalVariable(LocalVariableBinding binding, ICompilationUnit unit)
public void acceptMethod(char[] declaringTypePackageName,
char[] declaringTypeName,
java.lang.String enclosingDeclaringTypeSignature,
char[] selector,
char[][] parameterPackageNames,
char[][] parameterTypeNames,
java.lang.String[] parameterSignatures,
char[][] typeParameterNames,
char[][][] typeParameterBoundNames,
boolean isConstructor,
boolean isDeclaration,
char[] uniqueKey,
int start,
int end)
acceptMethod in interface ISelectionRequestordeclaringTypePackageName - char[]
Name of the package in which the type that contains this new method is declared.declaringTypeName - char[]
Name of the type declaring this new method.enclosingDeclaringTypeSignature - String
Type signature of the declaring type of the declaring type or null
if declaring type is a top level type.selector - char[]
Name of the new method.parameterPackageNames - char[][]
Names of the packages in which the parameter types are declared.
Should contain as many elements as parameterTypeNames.parameterTypeNames - char[][]
Names of the parameters types.
Should contain as many elements as parameterPackageNames.parameterSignatures - String[]
Signature of the parameters types.
Should contain as many elements as parameterPackageNames.isConstructor - boolean
Answer if the method is a constructor.isDeclaration - boolean
Answer if the selected method is a declarationuniqueKey - unique key of the methodstart - Start of the selectionend - End of the selection
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.public void acceptPackage(char[] packageName)
acceptPackage in interface ISelectionRequestorpackageName - char[]
The package name.
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.protected void acceptSourceMethod(IType type, char[] selector, char[][] parameterPackageNames, char[][] parameterTypeNames, java.lang.String[] parameterSignatures, char[][] typeParameterNames, char[][][] typeParameterBoundNames, char[] uniqueKey)
protected void acceptMethodDeclaration(IType type, char[] selector, int start, int end)
public void acceptTypeParameter(char[] declaringTypePackageName,
char[] declaringTypeName,
char[] typeParameterName,
boolean isDeclaration,
int start,
int end)
ISelectionRequestoracceptTypeParameter in interface ISelectionRequestordeclaringTypePackageName - char[]
Name of the package in which the type that contains this new method is declared.declaringTypeName - char[]
Name of the type declaring this new method.typeParameterName - char[]
Name of the type parameter.isDeclaration - boolean
Answer if the selected type parameter is a declarationstart - Start of the selectionend - End of the selection
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.public void acceptMethodTypeParameter(char[] declaringTypePackageName,
char[] declaringTypeName,
char[] selector,
int selectorStart,
int selectorEnd,
char[] typeParameterName,
boolean isDeclaration,
int start,
int end)
ISelectionRequestoracceptMethodTypeParameter in interface ISelectionRequestordeclaringTypePackageName - char[]
Name of the package in which the type that contains this new method is declared.declaringTypeName - char[]
Name of the type declaring this new method.selector - char[]
Name of the declaring method.selectorStart - int
Start of the selector.selectorEnd - int
End of the selector.typeParameterName - char[]
Name of the type parameter.isDeclaration - boolean
Answer if the selected type parameter is a declarationstart - Start of the selectionend - End of the selection
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.protected void addElement(IJavaElement element)
protected IJavaElement findLocalElement(int pos)
protected IJavaElement findLocalElement(int pos, MethodScope scope)
public IJavaElement findMethodFromBinding(MethodBinding method, java.lang.String[] signatures, ReferenceBinding declaringClass)
Util.findMethod(IType, char[], String[], boolean) , this does not require an IType to get
the IMethod element.method - the given method bindingsignatures - the type signatures of the method argumentsdeclaringClass - the binding of the method's declaring classpublic IJavaElement[] getElements()
protected IModuleDescription resolveModule(char[] moduleName)
protected IType resolveType(char[] packageName, char[] typeName, int acceptFlags)
protected IType resolveTypeByLocation(char[] packageName, char[] typeName, int acceptFlags, int start, int end)