diff --git a/core/org.eclipse.cdt.core.tests/ChangeLog b/core/org.eclipse.cdt.core.tests/ChangeLog index 3f5c1e5a224..3fa1b1ae91c 100644 --- a/core/org.eclipse.cdt.core.tests/ChangeLog +++ b/core/org.eclipse.cdt.core.tests/ChangeLog @@ -1,3 +1,6 @@ +2003-07-21 Bogdan Gheorghe + Added new indexer test for newly added declarations + 2003-07-21 John Camelon Created CompleteParseASTTest and added it to ParserTestSuite. diff --git a/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java b/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java index 1b6d45b7a9c..90eaf81ccc1 100644 --- a/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java +++ b/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java @@ -21,6 +21,7 @@ import org.eclipse.cdt.internal.core.index.IEntryResult; import org.eclipse.cdt.internal.core.index.IIndex; import org.eclipse.cdt.internal.core.index.IQueryResult; import org.eclipse.cdt.internal.core.index.impl.IFileDocument; +import org.eclipse.cdt.internal.core.search.indexing.IIndexConstants; import org.eclipse.cdt.internal.core.search.indexing.IndexManager; import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IProject; @@ -63,9 +64,7 @@ public class IndexManagerTests extends TestCase { //Create temp project testProject = createProject("IndexerTestProject"); if (testProject==null) - fail("Unable to create project"); - //Add a file to the project - importFile("mail.cpp","resources/indexer/mail.cpp"); + fail("Unable to create project"); } /* * @see TestCase#tearDown() @@ -78,7 +77,10 @@ public class IndexManagerTests extends TestCase { } } - public static Test suite() { + public static Test suite() { + //TestSuite suite = new TestSuite(); + //suite.addTest(new IndexManagerTests("testIndexContents")); + //return suite; return new TestSuite(IndexManagerTests.class); } /* @@ -136,6 +138,8 @@ public class IndexManagerTests extends TestCase { * Start of tests */ public void testIndexAll() throws Exception { + //Add a file to the project + importFile("mail.cpp","resources/indexer/mail.cpp"); //Enable indexing on the created project //By doing this, we force the Index Manager to indexAll() indexManager = CCorePlugin.getDefault().getCoreModel().getIndexManager(); @@ -167,6 +171,8 @@ public class IndexManagerTests extends TestCase { } public void testAddNewFileToIndex() throws Exception{ + //Add a file to the project + importFile("mail.cpp","resources/indexer/mail.cpp"); //Enable indexing on the created project //By doing this, we force the Index Manager to indexAll() indexManager = CCorePlugin.getDefault().getCoreModel().getIndexManager(); @@ -194,6 +200,8 @@ public class IndexManagerTests extends TestCase { } public void testRemoveProjectFromIndex() throws Exception{ + //Add a file to the project + importFile("mail.cpp","resources/indexer/mail.cpp"); //Enable indexing on the created project //By doing this, we force the Index Manager to indexAll() indexManager = CCorePlugin.getDefault().getCoreModel().getIndexManager(); @@ -211,6 +219,8 @@ public class IndexManagerTests extends TestCase { } public void testRemoveFileFromIndex() throws Exception{ + //Add a file to the project + importFile("mail.cpp","resources/indexer/mail.cpp"); //Enable indexing on the created project //By doing this, we force the Index Manager to indexAll() indexManager = CCorePlugin.getDefault().getCoreModel().getIndexManager(); @@ -252,4 +262,83 @@ public class IndexManagerTests extends TestCase { } } + public void testIndexContents() throws Exception{ + //Add a new file to the project, give it some time to index + importFile("extramail.cpp","resources/indexer/extramail.cpp"); + //Enable indexing on the created project + //By doing this, we force the Index Manager to indexAll() + indexManager = CCorePlugin.getDefault().getCoreModel().getIndexManager(); + indexManager.setEnabled(testProject,true); + Thread.sleep(15000); + //Make sure project got added to index + IPath testProjectPath = testProject.getFullPath(); + IIndex ind = indexManager.getIndex(testProjectPath,true,true); + assertTrue("Index exists for project",ind != null); + + String [] typeDeclEntryResultModel ={"EntryResult: word=typeDecl/C/Mail/Z/X/Y, refs={ 1 }","EntryResult: word=typeDecl/C/Unknown/Z/X/Y, refs={ 1 }","EntryResult: word=typeDecl/C/container/Z/X/Y, refs={ 1 }","EntryResult: word=typeDecl/C/first_class/Z/X/Y, refs={ 1 }","EntryResult: word=typeDecl/C/postcard/Z/X/Y, refs={ 1 }","EntryResult: word=typeDecl/E/test/Z/X/Y, refs={ 1 }","EntryResult: word=typeDecl/V/x/Z, refs={ 1 }"}; + IEntryResult[] typedeclresults =ind.queryEntries(IIndexConstants.TYPE_DECL); + + if (typedeclresults.length != typeDeclEntryResultModel.length) + fail("Entry Result length different from model for typeDecl"); + + for (int i=0;i +#include +#include +#include + +typedef int int32; + +static void doSomething(); + +namespace Z{ + int x; + namespace X{ + namespace Y{ + enum test{cool,hi,bye,why}; + class Mail + { + public: + Mail(){} + virtual void print()=0; //Pure Virtual Function, forces redefinition + protected: + float postage; + char *type; + friend ostream& operator << (ostream& os, Mail *m); + }; + + class postcard : public Mail + { + public: + postcard(): Mail(){postage = 0.20; type = "Postcard";} + void print(){cout << type << ": $" << setiosflags(ios::fixed) + <print(); + } + //Overloaded << + for(int x =0; x type + << ": $" << m->postage < 0){ + //Extract the name first + char [] tempName = elementName[elementName.length-1].toCharArray(); + System.arraycopy(tempName, 0, result, pos, tempName.length); + pos += tempName.length; + } + //Extract the qualifiers + for (int i=0; i<(elementName.length - 1); i++){ + result[pos++] = SEPARATOR; + char [] tempName = elementName[i].toCharArray(); + System.arraycopy(tempName, 0, result, pos, tempName.length); + pos+=tempName.length; + } + return result; + } + /** * Returns the file types the IIndexer handles. */ @@ -219,5 +308,60 @@ public abstract class AbstractIndexer implements IIndexer, IIndexConstants, ICSe return result; } + + public static final char[] bestNamespacePrefix(char[] namespaceName, char[][] containingTypes, int matchMode, boolean isCaseSensitive) { + // index is case sensitive, thus in case attempting case insensitive search, cannot consider + // type name. + if (!isCaseSensitive){ + namespaceName = null; + } + + switch(matchMode){ + case EXACT_MATCH : + case PREFIX_MATCH : + break; + case PATTERN_MATCH : + if (namespaceName != null){ + int starPos = CharOperation.indexOf('*', namespaceName); + switch(starPos) { + case -1 : + break; + case 0 : + namespaceName = null; + break; + default : + namespaceName = CharOperation.subarray(namespaceName, 0, starPos); + } + } + } + + int containingTypesLength=0; + int typeLength = namespaceName == null ? 0 : namespaceName.length; + int pos; + //figure out the total length of the qualifiers + for (int i=0; i 0){ + System.arraycopy(namespaceName, 0, result, pos, namespaceName.length); + pos += namespaceName.length; + } + + for (int i=0; i this.jobStart) { // check if a job to index the project is not already in the queue IndexRequest request = new IndexAllProject(project, this); @@ -301,6 +315,12 @@ public class IndexManager extends JobManager implements IIndexConstants { IndexRequest request = null; if (target instanceof IProject) { IProject p = (IProject) target; + /****** + *TODO: Remove these methods once the new indexer is + *fully integrated + */ + if (!isEnabled(p)) return; + //if (JavaProject.hasJavaNature(p)) request = new IndexAllProject(p, this); } @@ -384,6 +404,12 @@ public class IndexManager extends JobManager implements IIndexConstants { */ public void removeSourceFolderFromIndex(CProject javaProject, IPath sourceFolder, char[][] exclusionPatterns) { IProject project = javaProject.getProject(); + /****** + *TODO: Remove these methods once the new indexer is + *fully integrated + */ + if (!isEnabled(project)) return; + if (this.jobEnd > this.jobStart) { // check if a job to index the project is not already in the queue IndexRequest request = new IndexAllProject(project, this); diff --git a/core/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/search/indexing/SourceIndexerRequestor.java b/core/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/search/indexing/SourceIndexerRequestor.java index 4cbc508fc79..bfb4f983fb2 100644 --- a/core/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/search/indexing/SourceIndexerRequestor.java +++ b/core/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/search/indexing/SourceIndexerRequestor.java @@ -15,10 +15,8 @@ package org.eclipse.cdt.internal.core.search.indexing; * @author bgheorgh */ -import org.eclipse.cdt.core.parser.IParser; import org.eclipse.cdt.core.parser.IProblem; import org.eclipse.cdt.core.parser.ISourceElementRequestor; -import org.eclipse.cdt.core.parser.IToken; import org.eclipse.cdt.core.parser.ast.IASTASMDefinition; import org.eclipse.cdt.core.parser.ast.IASTAbstractTypeSpecifierDeclaration; import org.eclipse.cdt.core.parser.ast.IASTClassReference; @@ -93,6 +91,7 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo public void acceptVariable(IASTVariable variable) { // TODO Auto-generated method stub //System.out.println("acceptVariable"); + indexer.addVariable(variable); } /* (non-Javadoc) @@ -101,6 +100,7 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo public void acceptFunctionDeclaration(IASTFunction function) { // TODO Auto-generated method stub //System.out.println("acceptFunctionDeclaration"); + indexer.addFunctionDeclaration(function); } /* (non-Javadoc) @@ -132,7 +132,7 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo */ public void acceptTypedefDeclaration(IASTTypedefDeclaration typedef) { // TODO Auto-generated method stub - //System.out.println("acceptTypedef"); + indexer.addTypedefDeclaration(typedef); } /* (non-Javadoc) @@ -141,6 +141,7 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo public void acceptEnumerationSpecifier(IASTEnumerationSpecifier enumeration) { // TODO Auto-generated method stub //System.out.println("acceptEnumSpecifier"); + indexer.addEnumerationSpecifier(enumeration); } /* (non-Javadoc) @@ -184,6 +185,7 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo public void enterNamespaceDefinition(IASTNamespaceDefinition namespaceDefinition) { // TODO Auto-generated method stub //System.out.println("enterNamespaceDefinition"); + indexer.addNamespaceDefinition(namespaceDefinition); } /* (non-Javadoc) @@ -236,6 +238,7 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo public void acceptMethodDeclaration(IASTMethod method) { // TODO Auto-generated method stub //System.out.println("acceptMethodDeclaration"); + indexer.addMethodDeclaration(method); } /* (non-Javadoc) @@ -259,7 +262,8 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo */ public void acceptField(IASTField field) { // TODO Auto-generated method stub - //System.out.println("acceptField"); + // System.out.println("acceptField"); + indexer.addFieldDeclaration(field); } /* (non-Javadoc) @@ -336,803 +340,75 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo // TODO Auto-generated method stub //System.out.println("exitCompilationUnit"); - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#setParser(org.eclipse.cdt.core.parser.IParser) - */ - public void setParser(IParser parser) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#translationUnitBegin() - */ - public Object translationUnitBegin() { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#translationUnitEnd(java.lang.Object) - */ - public void translationUnitEnd(Object unit) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#inclusionBegin(java.lang.String, int, int, boolean) - */ - public Object inclusionBegin(String includeFile, int nameBeginOffset, int inclusionBeginOffset, boolean local) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#inclusionEnd(java.lang.Object) - */ - public void inclusionEnd(Object inclusion) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#macro(java.lang.String, int, int, int) - */ - public Object macro(String macroName, int macroNameOffset, int macroBeginOffset, int macroEndOffset) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#simpleDeclarationBegin(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public Object simpleDeclarationBegin(Object Container, IToken firstToken) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#simpleDeclSpecifier(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void simpleDeclSpecifier(Object Container, IToken specifier) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#simpleDeclSpecifierName(java.lang.Object) - */ - public void simpleDeclSpecifierName(Object declaration) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#simpleDeclSpecifierType(java.lang.Object, java.lang.Object) - */ - public void simpleDeclSpecifierType(Object declaration, Object type) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#simpleDeclarationEnd(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void simpleDeclarationEnd(Object declaration, IToken lastToken) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#parameterDeclarationBegin(java.lang.Object) - */ - public Object parameterDeclarationBegin(Object Container) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#parameterDeclarationEnd(java.lang.Object) - */ - public void parameterDeclarationEnd(Object declaration) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#nameBegin(org.eclipse.cdt.core.parser.IToken) - */ - public void nameBegin(IToken firstToken) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#nameEnd(org.eclipse.cdt.core.parser.IToken) - */ - public void nameEnd(IToken lastToken) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#declaratorBegin(java.lang.Object) - */ - public Object declaratorBegin(Object container) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#declaratorId(java.lang.Object) - */ - public void declaratorId(Object declarator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#declaratorAbort(java.lang.Object) - */ - public void declaratorAbort(Object declarator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#declaratorPureVirtual(java.lang.Object) - */ - public void declaratorPureVirtual(Object declarator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#declaratorCVModifier(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void declaratorCVModifier(Object declarator, IToken modifier) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#declaratorThrowsException(java.lang.Object) - */ - public void declaratorThrowsException(Object declarator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#declaratorThrowExceptionName(java.lang.Object) - */ - public void declaratorThrowExceptionName(Object declarator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#declaratorEnd(java.lang.Object) - */ - public void declaratorEnd(Object declarator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#arrayDeclaratorBegin(java.lang.Object) - */ - public Object arrayDeclaratorBegin(Object declarator) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#arrayDeclaratorEnd(java.lang.Object) - */ - public void arrayDeclaratorEnd(Object arrayQualifier) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#pointerOperatorBegin(java.lang.Object) - */ - public Object pointerOperatorBegin(Object container) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#pointerOperatorType(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void pointerOperatorType(Object ptrOperator, IToken type) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#pointerOperatorName(java.lang.Object) - */ - public void pointerOperatorName(Object ptrOperator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#pointerOperatorCVModifier(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void pointerOperatorCVModifier(Object ptrOperator, IToken modifier) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#pointerOperatorAbort(java.lang.Object) - */ - public void pointerOperatorAbort(Object ptrOperator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#pointerOperatorEnd(java.lang.Object) - */ - public void pointerOperatorEnd(Object ptrOperator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#argumentsBegin(java.lang.Object) - */ - public Object argumentsBegin(Object declarator) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#argumentsEnd(java.lang.Object) - */ - public void argumentsEnd(Object parameterDeclarationClause) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#functionBodyBegin(java.lang.Object) - */ - public Object functionBodyBegin(Object declaration) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#functionBodyEnd(java.lang.Object) - */ - public void functionBodyEnd(Object functionBody) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#classSpecifierBegin(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public Object classSpecifierBegin(Object container, IToken classKey) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#classSpecifierName(java.lang.Object) - */ - public void classSpecifierName(Object classSpecifier) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#classSpecifierAbort(java.lang.Object) - */ - public void classSpecifierAbort(Object classSpecifier) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#classMemberVisibility(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void classMemberVisibility(Object classSpecifier, IToken visibility) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#classSpecifierEnd(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void classSpecifierEnd(Object classSpecifier, IToken closingBrace) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#baseSpecifierBegin(java.lang.Object) - */ - public Object baseSpecifierBegin(Object containingClassSpec) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#baseSpecifierName(java.lang.Object) - */ - public void baseSpecifierName(Object baseSpecifier) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#baseSpecifierVisibility(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void baseSpecifierVisibility(Object baseSpecifier, IToken visibility) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#baseSpecifierVirtual(java.lang.Object, boolean) - */ - public void baseSpecifierVirtual(Object baseSpecifier, boolean virtual) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#baseSpecifierEnd(java.lang.Object) - */ - public void baseSpecifierEnd(Object baseSpecifier) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#expressionBegin(java.lang.Object) - */ - public Object expressionBegin(Object container) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#expressionOperator(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void expressionOperator(Object expression, IToken operator) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#expressionTerminal(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void expressionTerminal(Object expression, IToken terminal) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#expressionName(java.lang.Object) - */ - public void expressionName(Object expression) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#expressionAbort(java.lang.Object) - */ - public void expressionAbort(Object expression) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#expressionEnd(java.lang.Object) - */ - public void expressionEnd(Object expression) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#elaboratedTypeSpecifierBegin(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public Object elaboratedTypeSpecifierBegin(Object container, IToken classKey) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#elaboratedTypeSpecifierName(java.lang.Object) - */ - public void elaboratedTypeSpecifierName(Object elab) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#elaboratedTypeSpecifierEnd(java.lang.Object) - */ - public void elaboratedTypeSpecifierEnd(Object elab) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#namespaceDefinitionBegin(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public Object namespaceDefinitionBegin(Object container, IToken namespace) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#namespaceDefinitionId(java.lang.Object) - */ - public void namespaceDefinitionId(Object namespace) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#namespaceDefinitionAbort(java.lang.Object) - */ - public void namespaceDefinitionAbort(Object namespace) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#namespaceDefinitionEnd(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void namespaceDefinitionEnd(Object namespace, IToken closingBrace) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#linkageSpecificationBegin(java.lang.Object, java.lang.String) - */ - public Object linkageSpecificationBegin(Object container, String literal) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#linkageSpecificationEnd(java.lang.Object) - */ - public void linkageSpecificationEnd(Object linkageSpec) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#usingDirectiveBegin(java.lang.Object) - */ - public Object usingDirectiveBegin(Object container) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#usingDirectiveNamespaceId(java.lang.Object) - */ - public void usingDirectiveNamespaceId(Object directive) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#usingDirectiveAbort(java.lang.Object) - */ - public void usingDirectiveAbort(Object directive) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#usingDirectiveEnd(java.lang.Object) - */ - public void usingDirectiveEnd(Object directive) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#usingDeclarationBegin(java.lang.Object) - */ - public Object usingDeclarationBegin(Object container) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#usingDeclarationMapping(java.lang.Object, boolean) - */ - public void usingDeclarationMapping(Object declaration, boolean isTypeName) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#usingDeclarationAbort(java.lang.Object) - */ - public void usingDeclarationAbort(Object declaration) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#usingDeclarationEnd(java.lang.Object) - */ - public void usingDeclarationEnd(Object declaration) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#enumSpecifierBegin(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public Object enumSpecifierBegin(Object container, IToken enumKey) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#enumSpecifierId(java.lang.Object) - */ - public void enumSpecifierId(Object enumSpec) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#enumSpecifierAbort(java.lang.Object) - */ - public void enumSpecifierAbort(Object enumSpec) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#enumSpecifierEnd(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void enumSpecifierEnd(Object enumSpec, IToken closingBrace) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#enumeratorBegin(java.lang.Object) - */ - public Object enumeratorBegin(Object enumSpec) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#enumeratorId(java.lang.Object) - */ - public void enumeratorId(Object enumDefn) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#enumeratorEnd(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void enumeratorEnd(Object enumDefn, IToken lastToken) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#asmDefinition(java.lang.Object, java.lang.String) - */ - public void asmDefinition(Object container, String assemblyCode) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#constructorChainBegin(java.lang.Object) - */ - public Object constructorChainBegin(Object declarator) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#constructorChainAbort(java.lang.Object) - */ - public void constructorChainAbort(Object ctor) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#constructorChainEnd(java.lang.Object) - */ - public void constructorChainEnd(Object ctor) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#constructorChainElementBegin(java.lang.Object) - */ - public Object constructorChainElementBegin(Object ctor) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#constructorChainElementId(java.lang.Object) - */ - public void constructorChainElementId(Object element) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#constructorChainElementEnd(java.lang.Object) - */ - public void constructorChainElementEnd(Object element) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#constructorChainElementExpressionListElementBegin(java.lang.Object) - */ - public Object constructorChainElementExpressionListElementBegin(Object element) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#constructorChainElementExpressionListElementEnd(java.lang.Object) - */ - public void constructorChainElementExpressionListElementEnd(Object expression) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#explicitInstantiationBegin(java.lang.Object) - */ - public Object explicitInstantiationBegin(Object container) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#explicitInstantiationEnd(java.lang.Object) - */ - public void explicitInstantiationEnd(Object instantiation) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#explicitSpecializationBegin(java.lang.Object) - */ - public Object explicitSpecializationBegin(Object container) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#explicitSpecializationEnd(java.lang.Object) - */ - public void explicitSpecializationEnd(Object instantiation) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateDeclarationBegin(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public Object templateDeclarationBegin(Object container, IToken firstToken) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateDeclarationAbort(java.lang.Object) - */ - public void templateDeclarationAbort(Object templateDecl) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateDeclarationEnd(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public void templateDeclarationEnd(Object templateDecl, IToken lastToken) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateParameterListBegin(java.lang.Object) - */ - public Object templateParameterListBegin(Object declaration) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateParameterListEnd(java.lang.Object) - */ - public void templateParameterListEnd(Object parameterList) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateTypeParameterBegin(java.lang.Object, org.eclipse.cdt.core.parser.IToken) - */ - public Object templateTypeParameterBegin(Object templDecl, IToken kind) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateTypeParameterName(java.lang.Object) - */ - public void templateTypeParameterName(Object typeParm) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateTypeParameterAbort(java.lang.Object) - */ - public void templateTypeParameterAbort(Object typeParm) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateTypeParameterInitialTypeId(java.lang.Object) - */ - public void templateTypeParameterInitialTypeId(Object typeParm) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#templateTypeParameterEnd(java.lang.Object) - */ - public void templateTypeParameterEnd(Object typeParm) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#startBitfield(java.lang.Object) - */ - public Object startBitfield(Object declarator) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#endBitfield(java.lang.Object) - */ - public void endBitfield(Object bitfield) { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#oldKRParametersBegin(java.lang.Object) - */ - public Object oldKRParametersBegin(Object parameterDeclarationClause) { - // TODO Auto-generated method stub - return null; - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.IParserCallback#oldKRParametersEnd(java.lang.Object) - */ - public void oldKRParametersEnd(Object oldKRParameterDeclarationClause) { - // TODO Auto-generated method stub - - } - - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptAbstractTypeSpecDeclaration(org.eclipse.cdt.core.parser.ast.IASTAbstractTypeSpecifierDeclaration) - */ - public void acceptAbstractTypeSpecDeclaration(IASTAbstractTypeSpecifierDeclaration abstractDeclaration) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptPointerToFunction(org.eclipse.cdt.core.parser.ast.IASTPointerToFunction) - */ - public void acceptPointerToFunction(IASTPointerToFunction function) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptPointerToMethod(org.eclipse.cdt.core.parser.ast.IASTPointerToMethod) - */ - public void acceptPointerToMethod(IASTPointerToMethod method) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptTypedefReference(org.eclipse.cdt.core.parser.ast.IASTTypedefReference) - */ - public void acceptTypedefReference(IASTTypedefReference reference) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptNamespaceReference(org.eclipse.cdt.core.parser.ast.IASTNamespaceReference) - */ - public void acceptNamespaceReference(IASTNamespaceReference reference) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptEnumerationReference(org.eclipse.cdt.core.parser.ast.IASTEnumerationReference) - */ - public void acceptEnumerationReference(IASTEnumerationReference reference) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptVariableReference(org.eclipse.cdt.core.parser.ast.IASTVariableReference) - */ - public void acceptVariableReference(IASTVariableReference reference) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptFunctionReference(org.eclipse.cdt.core.parser.ast.IASTFunctionReference) - */ - public void acceptFunctionReference(IASTFunctionReference reference) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptFieldReference(org.eclipse.cdt.core.parser.ast.IASTFieldReference) - */ - public void acceptFieldReference(IASTFieldReference reference) - { - // TODO Auto-generated method stub - - } - /* (non-Javadoc) - * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptMethodReference(org.eclipse.cdt.core.parser.ast.IASTMethodReference) - */ - public void acceptMethodReference(IASTMethodReference reference) - { - // TODO Auto-generated method stub - - } - -//TODO: Get rid of these IParserCallbacks once the parser cleans up - +} + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptAbstractTypeSpecDeclaration(org.eclipse.cdt.core.parser.ast.IASTAbstractTypeSpecifierDeclaration) + */ + public void acceptAbstractTypeSpecDeclaration(IASTAbstractTypeSpecifierDeclaration abstractDeclaration) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptPointerToFunction(org.eclipse.cdt.core.parser.ast.IASTPointerToFunction) + */ + public void acceptPointerToFunction(IASTPointerToFunction function) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptPointerToMethod(org.eclipse.cdt.core.parser.ast.IASTPointerToMethod) + */ + public void acceptPointerToMethod(IASTPointerToMethod method) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptTypedefReference(org.eclipse.cdt.core.parser.ast.IASTTypedefReference) + */ + public void acceptTypedefReference(IASTTypedefReference reference) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptNamespaceReference(org.eclipse.cdt.core.parser.ast.IASTNamespaceReference) + */ + public void acceptNamespaceReference(IASTNamespaceReference reference) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptEnumerationReference(org.eclipse.cdt.core.parser.ast.IASTEnumerationReference) + */ + public void acceptEnumerationReference(IASTEnumerationReference reference) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptVariableReference(org.eclipse.cdt.core.parser.ast.IASTVariableReference) + */ + public void acceptVariableReference(IASTVariableReference reference) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptFunctionReference(org.eclipse.cdt.core.parser.ast.IASTFunctionReference) + */ + public void acceptFunctionReference(IASTFunctionReference reference) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptFieldReference(org.eclipse.cdt.core.parser.ast.IASTFieldReference) + */ + public void acceptFieldReference(IASTFieldReference reference) { + // TODO Auto-generated method stub + + } + /* (non-Javadoc) + * @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptMethodReference(org.eclipse.cdt.core.parser.ast.IASTMethodReference) + */ + public void acceptMethodReference(IASTMethodReference reference) { + // TODO Auto-generated method stub + + } } diff --git a/core/org.eclipse.cdt.ui/ChangeLog b/core/org.eclipse.cdt.ui/ChangeLog index b48af610980..a18de1c7222 100644 --- a/core/org.eclipse.cdt.ui/ChangeLog +++ b/core/org.eclipse.cdt.ui/ChangeLog @@ -1,3 +1,9 @@ +2003-07-21 Bogdan Gheorghe + Update to CSearchResultLabelProvider to ensure that search labels + show up on subsequent runs. + + * src/org/eclipse/cdt/internal/ui/search/CSearchResultCollector.java + * src/org/eclipse/cdt/internal/ui/search/CSearchResultLabelProvider.java 2003-07-18 John Camelon In the core, I updated ParserFactory.createScanner() to force the user to provide a callback and a ParserMode. ==> I had to update ComparatorModelBuilder. diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchResultCollector.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchResultCollector.java index 3ca4a08b6ac..05a1aaf494d 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchResultCollector.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchResultCollector.java @@ -163,7 +163,7 @@ public class CSearchResultCollector implements ICSearchResultCollector { } Image image = CUIPlugin.getImageDescriptorRegistry().get( imageDescriptor ); - IMatch match = new Match(name, parentName, image, node.getElementNameOffset(), name.length() ); + IMatch match = new Match(name, parentName, image, node.getNameOffset(), name.length() ); return match; } diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchResultLabelProvider.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchResultLabelProvider.java index 0eaba7bcb81..fcd6043a49e 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchResultLabelProvider.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/CSearchResultLabelProvider.java @@ -42,6 +42,7 @@ public class CSearchResultLabelProvider extends LabelProvider { public static final String POTENTIAL_MATCH = CSearchMessages.getString("CSearchResultLabelProvider.potentialMatch"); //$NON-NLS-1$ public CSearchResultLabelProvider(){ + _sortOrder = SHOW_ELEMENT_CONTAINER; //_imageProvider = new CElementImageProvider(); //_labelProvider = new CElementLabelProvider(); }