1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

RESOLVED - bug 258823: AbstractIndexerTask.runTask() breaks standalone indexer

https://bugs.eclipse.org/bugs/show_bug.cgi?id=258823
This commit is contained in:
Chris Recoskie 2008-12-15 15:57:45 +00:00
parent b21a58f049
commit 5945dd5813
2 changed files with 20 additions and 2 deletions

View file

@ -17,6 +17,7 @@ import java.text.NumberFormat;
import java.util.Collection; import java.util.Collection;
import java.util.Iterator; import java.util.Iterator;
import org.eclipse.cdt.core.dom.ILinkage;
import org.eclipse.cdt.core.model.AbstractLanguage; import org.eclipse.cdt.core.model.AbstractLanguage;
import org.eclipse.cdt.core.model.ILanguage; import org.eclipse.cdt.core.model.ILanguage;
import org.eclipse.cdt.core.parser.IParserLogService; import org.eclipse.cdt.core.parser.IParserLogService;
@ -44,6 +45,10 @@ public abstract class StandaloneIndexerTask extends AbstractIndexerTask {
protected StandaloneIndexer fIndexer; protected StandaloneIndexer fIndexer;
public static final int[] IDS_FOR_LINKAGES_TO_INDEX = {
ILinkage.CPP_LINKAGE_ID, ILinkage.C_LINKAGE_ID, ILinkage.FORTRAN_LINKAGE_ID
};
protected StandaloneIndexerTask(StandaloneIndexer indexer, Collection<String> added, Collection<String> changed, Collection<String> removed, boolean isFast) { protected StandaloneIndexerTask(StandaloneIndexer indexer, Collection<String> added, Collection<String> changed, Collection<String> removed, boolean isFast) {
super(concat(added, changed), removed.toArray(), new StandaloneIndexerInputAdapter(indexer), isFast); super(concat(added, changed), removed.toArray(), new StandaloneIndexerInputAdapter(indexer), isFast);
fIndexer= indexer; fIndexer= indexer;
@ -234,5 +239,11 @@ public abstract class StandaloneIndexerTask extends AbstractIndexerTask {
return super.createDefaultScannerConfig(linkageID); return super.createDefaultScannerConfig(linkageID);
} }
/* (non-Javadoc)
* @see org.eclipse.cdt.internal.core.pdom.AbstractIndexerTask#getLinkagesToParse()
*/
@Override
protected int[] getLinkagesToParse() {
return IDS_FOR_LINKAGES_TO_INDEX;
}
} }

View file

@ -237,7 +237,7 @@ public abstract class AbstractIndexerTask extends PDOMWriter {
removeFilesInIndex(fFilesToRemove, ifilesToRemove, monitor); removeFilesInIndex(fFilesToRemove, ifilesToRemove, monitor);
parseFilesUpFront(monitor); parseFilesUpFront(monitor);
for (int linkageID : PDOMManager.IDS_FOR_LINKAGES_TO_INDEX) { for (int linkageID : getLinkagesToParse()) {
parseLinkage(linkageID, files, monitor); parseLinkage(linkageID, files, monitor);
} }
} finally { } finally {
@ -820,4 +820,11 @@ public abstract class AbstractIndexerTask extends PDOMWriter {
protected IStatus createStatus(String msg) { protected IStatus createStatus(String msg) {
return CCorePlugin.createStatus(msg); return CCorePlugin.createStatus(msg);
} }
/**
* @return array of linkage IDs that should be parsed
*/
protected int[] getLinkagesToParse() {
return PDOMManager.IDS_FOR_LINKAGES_TO_INDEX;
}
} }