forked from qt-creator/qt-creator
CppTools: Reorder some (Raw)ProjectPart members
Mostly for clarity, but as a side effect, this reduces the size of ProjectPart from 168 to 160 bytes. Change-Id: Iee23c97d581a5233554c05ed2fd7ea07e2e9b45a Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
This commit is contained in:
@@ -56,49 +56,54 @@ public:
|
|||||||
|
|
||||||
void setDisplayName(const QString &displayName);
|
void setDisplayName(const QString &displayName);
|
||||||
|
|
||||||
// FileClassifier must be thread-safe.
|
|
||||||
using FileClassifier = std::function<ProjectFile(const QString &filePath)>;
|
|
||||||
void setFiles(const QStringList &files, FileClassifier fileClassifier = FileClassifier());
|
|
||||||
|
|
||||||
void setProjectFileLocation(const QString &projectFile, int line = -1, int column = -1);
|
void setProjectFileLocation(const QString &projectFile, int line = -1, int column = -1);
|
||||||
void setConfigFileName(const QString &configFileName);
|
void setConfigFileName(const QString &configFileName);
|
||||||
void setCallGroupId(const QString &id);
|
void setCallGroupId(const QString &id);
|
||||||
void setBuildSystemTarget(const QString &target);
|
|
||||||
|
|
||||||
void setQtVersion(ProjectPart::QtVersion qtVersion);
|
// FileClassifier must be thread-safe.
|
||||||
|
using FileClassifier = std::function<ProjectFile(const QString &filePath)>;
|
||||||
void setMacros(const ProjectExplorer::Macros ¯os);
|
void setFiles(const QStringList &files, FileClassifier fileClassifier = FileClassifier());
|
||||||
void setHeaderPaths(const ProjectExplorer::HeaderPaths &headerPaths);
|
void setHeaderPaths(const ProjectExplorer::HeaderPaths &headerPaths);
|
||||||
void setIncludePaths(const QStringList &includePaths);
|
void setIncludePaths(const QStringList &includePaths);
|
||||||
|
|
||||||
void setPreCompiledHeaders(const QStringList &preCompiledHeaders);
|
void setPreCompiledHeaders(const QStringList &preCompiledHeaders);
|
||||||
|
|
||||||
|
void setBuildSystemTarget(const QString &target);
|
||||||
|
void setBuildTargetType(ProjectPart::BuildTargetType type);
|
||||||
void setSelectedForBuilding(bool yesno);
|
void setSelectedForBuilding(bool yesno);
|
||||||
|
|
||||||
void setFlagsForC(const RawProjectPartFlags &flags);
|
void setFlagsForC(const RawProjectPartFlags &flags);
|
||||||
void setFlagsForCxx(const RawProjectPartFlags &flags);
|
void setFlagsForCxx(const RawProjectPartFlags &flags);
|
||||||
|
|
||||||
void setBuildTargetType(ProjectPart::BuildTargetType type);
|
void setMacros(const ProjectExplorer::Macros ¯os);
|
||||||
|
void setQtVersion(ProjectPart::QtVersion qtVersion);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
QString displayName;
|
QString displayName;
|
||||||
|
|
||||||
QString projectFile;
|
QString projectFile;
|
||||||
int projectFileLine = -1;
|
int projectFileLine = -1;
|
||||||
int projectFileColumn = -1;
|
int projectFileColumn = -1;
|
||||||
QString projectConfigFile; // currently only used by the Generic Project Manager
|
|
||||||
QString callGroupId;
|
QString callGroupId;
|
||||||
QString buildSystemTarget;
|
|
||||||
|
// Files
|
||||||
|
QStringList files;
|
||||||
|
FileClassifier fileClassifier;
|
||||||
QStringList precompiledHeaders;
|
QStringList precompiledHeaders;
|
||||||
ProjectExplorer::HeaderPaths headerPaths;
|
ProjectExplorer::HeaderPaths headerPaths;
|
||||||
ProjectExplorer::Macros projectMacros;
|
QString projectConfigFile; // Generic Project Manager only
|
||||||
ProjectPart::QtVersion qtVersion = ProjectPart::UnknownQt;
|
|
||||||
|
// Build system
|
||||||
|
QString buildSystemTarget;
|
||||||
|
ProjectPart::BuildTargetType buildTargetType = ProjectPart::BuildTargetType::Unknown;
|
||||||
bool selectedForBuilding = true;
|
bool selectedForBuilding = true;
|
||||||
|
|
||||||
|
// Flags
|
||||||
RawProjectPartFlags flagsForC;
|
RawProjectPartFlags flagsForC;
|
||||||
RawProjectPartFlags flagsForCxx;
|
RawProjectPartFlags flagsForCxx;
|
||||||
|
|
||||||
QStringList files;
|
// Misc
|
||||||
FileClassifier fileClassifier;
|
ProjectExplorer::Macros projectMacros;
|
||||||
ProjectPart::BuildTargetType buildTargetType = ProjectPart::BuildTargetType::Unknown;
|
ProjectPart::QtVersion qtVersion = ProjectPart::UnknownQt;
|
||||||
};
|
};
|
||||||
|
|
||||||
using RawProjectParts = QVector<RawProjectPart>;
|
using RawProjectParts = QVector<RawProjectPart>;
|
||||||
|
@@ -87,32 +87,38 @@ public:
|
|||||||
QString projectFile;
|
QString projectFile;
|
||||||
int projectFileLine = -1;
|
int projectFileLine = -1;
|
||||||
int projectFileColumn = -1;
|
int projectFileColumn = -1;
|
||||||
QString projectConfigFile; // currently only used by the Generic Project Manager
|
|
||||||
QString callGroupId;
|
QString callGroupId;
|
||||||
QString buildSystemTarget;
|
|
||||||
|
|
||||||
ProjectFiles files;
|
|
||||||
|
|
||||||
QStringList precompiledHeaders;
|
|
||||||
ProjectExplorer::HeaderPaths headerPaths;
|
|
||||||
|
|
||||||
ProjectExplorer::Macros projectMacros;
|
|
||||||
|
|
||||||
|
// Versions, features and extensions
|
||||||
ProjectExplorer::LanguageVersion languageVersion = ProjectExplorer::LanguageVersion::LatestCxx;
|
ProjectExplorer::LanguageVersion languageVersion = ProjectExplorer::LanguageVersion::LatestCxx;
|
||||||
ProjectExplorer::LanguageExtensions languageExtensions = ProjectExplorer::LanguageExtension::None;
|
ProjectExplorer::LanguageExtensions languageExtensions = ProjectExplorer::LanguageExtension::None;
|
||||||
ProjectExplorer::WarningFlags warningFlags = ProjectExplorer::WarningFlags::Default;
|
|
||||||
QtVersion qtVersion = UnknownQt;
|
|
||||||
CPlusPlus::LanguageFeatures languageFeatures;
|
CPlusPlus::LanguageFeatures languageFeatures;
|
||||||
|
QtVersion qtVersion = UnknownQt;
|
||||||
|
|
||||||
|
// Files
|
||||||
|
ProjectFiles files;
|
||||||
|
QStringList precompiledHeaders;
|
||||||
|
ProjectExplorer::HeaderPaths headerPaths;
|
||||||
|
QString projectConfigFile; // Generic Project Manager only
|
||||||
|
|
||||||
|
// Macros
|
||||||
|
ProjectExplorer::Macros projectMacros;
|
||||||
|
ProjectExplorer::Macros toolChainMacros;
|
||||||
|
|
||||||
|
// Build system
|
||||||
|
QString buildSystemTarget;
|
||||||
|
BuildTargetType buildTargetType = Unknown;
|
||||||
bool selectedForBuilding = true;
|
bool selectedForBuilding = true;
|
||||||
|
|
||||||
|
// ToolChain
|
||||||
Core::Id toolchainType;
|
Core::Id toolchainType;
|
||||||
bool isMsvc2015Toolchain = false;
|
bool isMsvc2015Toolchain = false;
|
||||||
ProjectExplorer::Macros toolChainMacros;
|
|
||||||
ToolChainWordWidth toolChainWordWidth = WordWidth32Bit;
|
|
||||||
QString toolChainTargetTriple;
|
QString toolChainTargetTriple;
|
||||||
|
ToolChainWordWidth toolChainWordWidth = WordWidth32Bit;
|
||||||
|
ProjectExplorer::WarningFlags warningFlags = ProjectExplorer::WarningFlags::Default;
|
||||||
|
|
||||||
|
// Misc
|
||||||
QStringList extraCodeModelFlags;
|
QStringList extraCodeModelFlags;
|
||||||
BuildTargetType buildTargetType = Unknown;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace CppTools
|
} // namespace CppTools
|
||||||
|
Reference in New Issue
Block a user