logic: indexer commands

* replaced parser arguments by project specific IndexerCommands that know everything the indexer needs to know to do its job
* added different language and project specific indexers that know how to handle a certain kind of indexer command
* refactored FileManager and FileRegister to have less overhead
* removed no-rtti restriction for clang files in lib cxx
* uncommented deprecated interprocess code.

fortune cookie message = Happiness will bring you good luck.
This commit is contained in:
malte_langkabel
2017-02-22 16:42:20 +01:00
parent 650cd8101e
commit 4563cbe90a
101 changed files with 1908 additions and 1120 deletions
@@ -0,0 +1,29 @@
#ifndef INDEXER_COMMAND_JAVA_H
#define INDEXER_COMMAND_JAVA_H
#include <vector>
#include "data/indexer/IndexerCommand.h"
#include "utility/file/FilePath.h"
class IndexerCommandJava: public IndexerCommand
{
public:
static std::string getIndexerKindString();
IndexerCommandJava(
const FilePath& sourceFilePath,
const std::set<FilePath>& indexedPaths,
const std::set<FilePath>& excludedPaths,
const std::vector<FilePath>& classPath);
virtual ~IndexerCommandJava();
virtual std::string getKindString() const;
std::vector<FilePath> getClassPath() const;
private:
std::vector<FilePath> m_classPath;
};
#endif // INDEXER_COMMAND_JAVA_H