mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-07 17:56:01 +02:00
Content Assist Work: More JUnit tests
This commit is contained in:
parent
7bccc3314d
commit
672ff00623
1 changed files with 20 additions and 17 deletions
|
@ -463,7 +463,7 @@ public class CompletionEngine implements RelevanceConstants {
|
||||||
kinds[0] = IASTNode.LookupKind.STRUCTURES;
|
kinds[0] = IASTNode.LookupKind.STRUCTURES;
|
||||||
kinds[1] = IASTNode.LookupKind.ENUMERATIONS;
|
kinds[1] = IASTNode.LookupKind.ENUMERATIONS;
|
||||||
kinds[2] = IASTNode.LookupKind.NAMESPACES;
|
kinds[2] = IASTNode.LookupKind.NAMESPACES;
|
||||||
result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, null);
|
result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, completionNode.getCompletionContext());
|
||||||
addToCompletions(result);
|
addToCompletions(result);
|
||||||
} else // prefix is empty, we can not look for everything
|
} else // prefix is empty, we can not look for everything
|
||||||
{
|
{
|
||||||
|
@ -475,17 +475,20 @@ public class CompletionEngine implements RelevanceConstants {
|
||||||
// 1. basic completion on all types
|
// 1. basic completion on all types
|
||||||
completionOnTypeReference(completionNode);
|
completionOnTypeReference(completionNode);
|
||||||
// 2. Get the search scope node
|
// 2. Get the search scope node
|
||||||
// TODO
|
IASTScope searchNode = completionNode.getCompletionScope();
|
||||||
// 3. provide a template for constructor/ destructor
|
// 3. provide a template for constructor/ destructor
|
||||||
// 4. lookup methods
|
if(completionNode.getCompletionPrefix().length() == 0){
|
||||||
// we are at a field declaration place, the user could be trying to override a function.
|
if(searchNode instanceof IASTClassSpecifier){
|
||||||
// We have to lookup functions that could be overridden here.
|
IASTClassSpecifier classSpec = (IASTClassSpecifier)searchNode;
|
||||||
// LookupResult result;
|
if (classSpec.getClassKind() == ASTClassKind.CLASS ) {
|
||||||
// IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
ILookupResult result = null;
|
||||||
// kinds[0] = IASTNode.LookupKind.METHODS;
|
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
||||||
// result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, completionNode.getCompletionContext());
|
kinds[0] = IASTNode.LookupKind.STRUCTURES;
|
||||||
// addToCompletions(result);
|
result = lookup(searchNode, classSpec.getName(), kinds, completionNode.getCompletionContext());
|
||||||
|
addToCompletions(result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
private void completionOnVariableType(IASTCompletionNode completionNode){
|
private void completionOnVariableType(IASTCompletionNode completionNode){
|
||||||
// 1. basic completion on all types
|
// 1. basic completion on all types
|
||||||
|
@ -505,7 +508,7 @@ public class CompletionEngine implements RelevanceConstants {
|
||||||
String prefix = completionNode.getCompletionPrefix();
|
String prefix = completionNode.getCompletionPrefix();
|
||||||
if(prefix.equals("("))
|
if(prefix.equals("("))
|
||||||
prefix = "";
|
prefix = "";
|
||||||
result = lookup(searchNode, prefix, kinds, null);
|
result = lookup(searchNode, prefix, kinds, completionNode.getCompletionContext());
|
||||||
addToCompletions(result);
|
addToCompletions(result);
|
||||||
|
|
||||||
List macros = lookupMacros(completionNode.getCompletionPrefix());
|
List macros = lookupMacros(completionNode.getCompletionPrefix());
|
||||||
|
@ -531,7 +534,7 @@ public class CompletionEngine implements RelevanceConstants {
|
||||||
// only look for classes
|
// only look for classes
|
||||||
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
||||||
kinds[0] = IASTNode.LookupKind.CLASSES;
|
kinds[0] = IASTNode.LookupKind.CLASSES;
|
||||||
ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, null);
|
ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, completionNode.getCompletionContext());
|
||||||
addToCompletions(result);
|
addToCompletions(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -541,7 +544,7 @@ public class CompletionEngine implements RelevanceConstants {
|
||||||
// only look for namespaces
|
// only look for namespaces
|
||||||
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
||||||
kinds[0] = IASTNode.LookupKind.NAMESPACES;
|
kinds[0] = IASTNode.LookupKind.NAMESPACES;
|
||||||
ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, null);
|
ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, completionNode.getCompletionContext());
|
||||||
addToCompletions(result);
|
addToCompletions(result);
|
||||||
}
|
}
|
||||||
private void completionOnExceptionReference(IASTCompletionNode completionNode){
|
private void completionOnExceptionReference(IASTCompletionNode completionNode){
|
||||||
|
@ -568,7 +571,7 @@ public class CompletionEngine implements RelevanceConstants {
|
||||||
// IASTClassSpecifier classContext = (IASTClassSpecifier) context;
|
// IASTClassSpecifier classContext = (IASTClassSpecifier) context;
|
||||||
// IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
// IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
||||||
// kinds[0] = IASTNode.LookupKind.STRUCTURES;
|
// kinds[0] = IASTNode.LookupKind.STRUCTURES;
|
||||||
// ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, null);
|
// ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, completionNode.getCompletionContext());
|
||||||
// addToCompletions(result);
|
// addToCompletions(result);
|
||||||
// }
|
// }
|
||||||
// basic completion on all types
|
// basic completion on all types
|
||||||
|
@ -581,7 +584,7 @@ public class CompletionEngine implements RelevanceConstants {
|
||||||
// only lookup constructors
|
// only lookup constructors
|
||||||
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[1];
|
||||||
kinds[0] = IASTNode.LookupKind.CONSTRUCTORS;
|
kinds[0] = IASTNode.LookupKind.CONSTRUCTORS;
|
||||||
ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, null);
|
ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, completionNode.getCompletionContext());
|
||||||
addToCompletions(result);
|
addToCompletions(result);
|
||||||
}
|
}
|
||||||
private void completionOnFunctionReference(IASTCompletionNode completionNode){
|
private void completionOnFunctionReference(IASTCompletionNode completionNode){
|
||||||
|
@ -591,7 +594,7 @@ public class CompletionEngine implements RelevanceConstants {
|
||||||
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[2];
|
IASTNode.LookupKind[] kinds = new IASTNode.LookupKind[2];
|
||||||
kinds[0] = IASTNode.LookupKind.FUNCTIONS;
|
kinds[0] = IASTNode.LookupKind.FUNCTIONS;
|
||||||
kinds[1] = IASTNode.LookupKind.METHODS;
|
kinds[1] = IASTNode.LookupKind.METHODS;
|
||||||
ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, null);
|
ILookupResult result = lookup(searchNode, completionNode.getCompletionPrefix(), kinds, completionNode.getCompletionContext());
|
||||||
addToCompletions(result);
|
addToCompletions(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue