Files
Sourcetrail/src/lib/data/parser/Parser.h
T
Eberhard Graether 2704d47cd8 logic: multiple fixes and improvements
* showing project name in main window title
* keep reference count visible when maximizing code file
* show first node in db when no main function is available
* log Storage stats after parse
* fixed macro locations saved multiply
* using NameHierarchy when retrieving ids
2015-10-01 19:03:05 +02:00

38 lines
761 B
C++

#ifndef PARSER_H
#define PARSER_H
#include <memory>
#include <string>
#include <vector>
#include "utility/file/FilePath.h"
class ParserClient;
class TextAccess;
class Parser
{
public:
struct Arguments
{
Arguments();
std::vector<FilePath> headerSearchPaths;
std::vector<FilePath> systemHeaderSearchPaths;
std::vector<FilePath> frameworkSearchPaths;
std::vector<std::string> compilerFlags;
bool logErrors;
};
Parser(ParserClient* client);
virtual ~Parser();
virtual void parseFiles(const std::vector<FilePath>& filePaths, const Arguments& arguments) = 0;
virtual void parseFile(const FilePath& filePath, std::shared_ptr<TextAccess> textAccess, const Arguments& arguments) = 0;
protected:
ParserClient* m_client;
};
#endif // PARSER_H