CppTools: Add API to set/query compiler call data

...and make some comparison functions public.

Change-Id: If4c9a95031dece32073ce111484a890230190688
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@theqtcompany.com>
This commit is contained in:
Nikolai Kosjar
2014-10-28 12:29:23 +01:00
committed by Fawzi Mohamed
parent bb4a58304d
commit 33359a7922
3 changed files with 62 additions and 17 deletions

View File

@@ -142,6 +142,12 @@ public:
bool isValid() const;
bool operator ==(const ProjectInfo &other) const;
bool operator !=(const ProjectInfo &other) const;
bool definesChanged(const ProjectInfo &other) const;
bool configurationChanged(const ProjectInfo &other) const;
bool configurationOrFilesChanged(const ProjectInfo &other) const;
QPointer<ProjectExplorer::Project> project() const;
const QList<ProjectPart::Ptr> projectParts() const;
@@ -153,10 +159,16 @@ public:
const QSet<QString> sourceFiles() const;
const QByteArray defines() const;
// Source file --> List of compiler calls
typedef QHash<QString, QList<QStringList>> CompilerCallData;
void setCompilerCallData(const CompilerCallData &data);
CompilerCallData compilerCallData() const;
private:
QPointer<ProjectExplorer::Project> m_project;
QList<ProjectPart::Ptr> m_projectParts;
// The members below are (re)calculated from the project parts once a part is appended.
CompilerCallData m_compilerCallData;
// The members below are (re)calculated from the project parts with finish()
ProjectPart::HeaderPaths m_headerPaths;
QSet<QString> m_sourceFiles;
QByteArray m_defines;