forked from qt-creator/qt-creator
ProjectExplorer: Change ToolChain::toMap() signature
... to something similar to AspectContainer::toMap() as preparation for later aspectification. Change-Id: Ic60060ad1a7eb1aba58ded01221b016c684db073 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This commit is contained in:
@@ -309,7 +309,7 @@ public:
|
|||||||
void addToEnvironment(Environment &env) const final;
|
void addToEnvironment(Environment &env) const final;
|
||||||
QList<OutputLineParser *> createOutputParsers() const final;
|
QList<OutputLineParser *> createOutputParsers() const final;
|
||||||
|
|
||||||
QVariantMap toMap() const final;
|
void toMap(QVariantMap &data) const final;
|
||||||
bool fromMap(const QVariantMap &data) final;
|
bool fromMap(const QVariantMap &data) final;
|
||||||
|
|
||||||
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() final;
|
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() final;
|
||||||
@@ -404,11 +404,10 @@ QList<Utils::OutputLineParser *> IarToolChain::createOutputParsers() const
|
|||||||
return {new IarParser()};
|
return {new IarParser()};
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap IarToolChain::toMap() const
|
void IarToolChain::toMap(QVariantMap &data) const
|
||||||
{
|
{
|
||||||
QVariantMap data = ToolChain::toMap();
|
ToolChain::toMap(data);
|
||||||
data.insert(compilerPlatformCodeGenFlagsKeyC, m_extraCodeModelFlags);
|
data.insert(compilerPlatformCodeGenFlagsKeyC, m_extraCodeModelFlags);
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool IarToolChain::fromMap(const QVariantMap &data)
|
bool IarToolChain::fromMap(const QVariantMap &data)
|
||||||
|
@@ -449,7 +449,7 @@ public:
|
|||||||
|
|
||||||
QList<OutputLineParser *> createOutputParsers() const final { return {new KeilParser}; }
|
QList<OutputLineParser *> createOutputParsers() const final { return {new KeilParser}; }
|
||||||
|
|
||||||
QVariantMap toMap() const final;
|
void toMap(QVariantMap &data) const final;
|
||||||
bool fromMap(const QVariantMap &data) final;
|
bool fromMap(const QVariantMap &data) final;
|
||||||
|
|
||||||
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() final;
|
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() final;
|
||||||
@@ -527,11 +527,10 @@ void KeilToolChain::addToEnvironment(Environment &env) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QVariantMap KeilToolChain::toMap() const
|
void KeilToolChain::toMap(QVariantMap &data) const
|
||||||
{
|
{
|
||||||
QVariantMap data = ToolChain::toMap();
|
ToolChain::toMap(data);
|
||||||
data.insert(compilerPlatformCodeGenFlagsKeyC, m_extraCodeModelFlags);
|
data.insert(compilerPlatformCodeGenFlagsKeyC, m_extraCodeModelFlags);
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool KeilToolChain::fromMap(const QVariantMap &data)
|
bool KeilToolChain::fromMap(const QVariantMap &data)
|
||||||
|
@@ -217,9 +217,9 @@ QString CustomToolChain::mkspecs() const
|
|||||||
return m_mkspecs.join(',');
|
return m_mkspecs.join(',');
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap CustomToolChain::toMap() const
|
void CustomToolChain::toMap(QVariantMap &data) const
|
||||||
{
|
{
|
||||||
QVariantMap data = ToolChain::toMap();
|
ToolChain::toMap(data);
|
||||||
data.insert(QLatin1String(makeCommandKeyC), m_makeCommand.toString());
|
data.insert(QLatin1String(makeCommandKeyC), m_makeCommand.toString());
|
||||||
QStringList macros = Utils::transform<QList>(m_predefinedMacros, [](const Macro &m) { return QString::fromUtf8(m.toByteArray()); });
|
QStringList macros = Utils::transform<QList>(m_predefinedMacros, [](const Macro &m) { return QString::fromUtf8(m.toByteArray()); });
|
||||||
data.insert(QLatin1String(predefinedMacrosKeyC), macros);
|
data.insert(QLatin1String(predefinedMacrosKeyC), macros);
|
||||||
@@ -227,8 +227,6 @@ QVariantMap CustomToolChain::toMap() const
|
|||||||
data.insert(QLatin1String(cxx11FlagsKeyC), m_cxx11Flags);
|
data.insert(QLatin1String(cxx11FlagsKeyC), m_cxx11Flags);
|
||||||
data.insert(QLatin1String(mkspecsKeyC), mkspecs());
|
data.insert(QLatin1String(mkspecsKeyC), mkspecs());
|
||||||
data.insert(QLatin1String(outputParserKeyC), m_outputParserId.toSetting());
|
data.insert(QLatin1String(outputParserKeyC), m_outputParserId.toSetting());
|
||||||
|
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CustomToolChain::fromMap(const QVariantMap &data)
|
bool CustomToolChain::fromMap(const QVariantMap &data)
|
||||||
|
@@ -56,7 +56,7 @@ public:
|
|||||||
QStringList headerPathsList() const;
|
QStringList headerPathsList() const;
|
||||||
void setHeaderPaths(const QStringList &list);
|
void setHeaderPaths(const QStringList &list);
|
||||||
|
|
||||||
QVariantMap toMap() const override;
|
void toMap(QVariantMap &data) const override;
|
||||||
bool fromMap(const QVariantMap &data) override;
|
bool fromMap(const QVariantMap &data) override;
|
||||||
|
|
||||||
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
||||||
|
@@ -795,14 +795,13 @@ QStringList GccToolChain::platformLinkerFlags() const
|
|||||||
return m_platformLinkerFlags;
|
return m_platformLinkerFlags;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap GccToolChain::toMap() const
|
void GccToolChain::toMap(QVariantMap &data) const
|
||||||
{
|
{
|
||||||
QVariantMap data = ToolChain::toMap();
|
ToolChain::toMap(data);
|
||||||
data.insert(compilerPlatformCodeGenFlagsKeyC, m_platformCodeGenFlags);
|
data.insert(compilerPlatformCodeGenFlagsKeyC, m_platformCodeGenFlags);
|
||||||
data.insert(compilerPlatformLinkerFlagsKeyC, m_platformLinkerFlags);
|
data.insert(compilerPlatformLinkerFlagsKeyC, m_platformLinkerFlags);
|
||||||
data.insert(originalTargetTripleKeyC, m_originalTargetTriple);
|
data.insert(originalTargetTripleKeyC, m_originalTargetTriple);
|
||||||
data.insert(supportedAbisKeyC, Utils::transform<QStringList>(m_supportedAbis, &Abi::toString));
|
data.insert(supportedAbisKeyC, Utils::transform<QStringList>(m_supportedAbis, &Abi::toString));
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GccToolChain::fromMap(const QVariantMap &data)
|
bool GccToolChain::fromMap(const QVariantMap &data)
|
||||||
@@ -1713,12 +1712,11 @@ std::unique_ptr<ToolChainConfigWidget> ClangToolChain::createConfigurationWidget
|
|||||||
return std::make_unique<ClangToolChainConfigWidget>(this);
|
return std::make_unique<ClangToolChainConfigWidget>(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap ClangToolChain::toMap() const
|
void ClangToolChain::toMap(QVariantMap &data) const
|
||||||
{
|
{
|
||||||
QVariantMap data = GccToolChain::toMap();
|
GccToolChain::toMap(data);
|
||||||
data.insert(parentToolChainIdKeyC, m_parentToolChainId);
|
data.insert(parentToolChainIdKeyC, m_parentToolChainId);
|
||||||
data.insert(priorityKeyC, m_priority);
|
data.insert(priorityKeyC, m_priority);
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ClangToolChain::fromMap(const QVariantMap &data)
|
bool ClangToolChain::fromMap(const QVariantMap &data)
|
||||||
|
@@ -66,7 +66,7 @@ public:
|
|||||||
QStringList suggestedMkspecList() const override;
|
QStringList suggestedMkspecList() const override;
|
||||||
QList<Utils::OutputLineParser *> createOutputParsers() const override;
|
QList<Utils::OutputLineParser *> createOutputParsers() const override;
|
||||||
|
|
||||||
QVariantMap toMap() const override;
|
void toMap(QVariantMap &data) const override;
|
||||||
bool fromMap(const QVariantMap &data) override;
|
bool fromMap(const QVariantMap &data) override;
|
||||||
|
|
||||||
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
||||||
@@ -206,7 +206,7 @@ public:
|
|||||||
|
|
||||||
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
||||||
|
|
||||||
QVariantMap toMap() const override;
|
void toMap(QVariantMap &data) const override;
|
||||||
bool fromMap(const QVariantMap &data) override;
|
bool fromMap(const QVariantMap &data) override;
|
||||||
|
|
||||||
void setPriority(int priority) { m_priority = priority; }
|
void setPriority(int priority) { m_priority = priority; }
|
||||||
|
@@ -978,16 +978,15 @@ Abis MsvcToolChain::supportedAbis() const
|
|||||||
return abis;
|
return abis;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap MsvcToolChain::toMap() const
|
void MsvcToolChain::toMap(QVariantMap &data) const
|
||||||
{
|
{
|
||||||
QVariantMap data = ToolChain::toMap();
|
ToolChain::toMap(data);
|
||||||
data.insert(QLatin1String(varsBatKeyC), m_vcvarsBat);
|
data.insert(QLatin1String(varsBatKeyC), m_vcvarsBat);
|
||||||
if (!m_varsBatArg.isEmpty())
|
if (!m_varsBatArg.isEmpty())
|
||||||
data.insert(QLatin1String(varsBatArgKeyC), m_varsBatArg);
|
data.insert(QLatin1String(varsBatArgKeyC), m_varsBatArg);
|
||||||
Utils::EnvironmentItem::sort(&m_environmentModifications);
|
Utils::EnvironmentItem::sort(&m_environmentModifications);
|
||||||
data.insert(QLatin1String(environModsKeyC),
|
data.insert(QLatin1String(environModsKeyC),
|
||||||
Utils::EnvironmentItem::toVariantList(m_environmentModifications));
|
Utils::EnvironmentItem::toVariantList(m_environmentModifications));
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MsvcToolChain::fromMap(const QVariantMap &data)
|
bool MsvcToolChain::fromMap(const QVariantMap &data)
|
||||||
@@ -1728,11 +1727,10 @@ static inline QString llvmDirKey()
|
|||||||
return QStringLiteral("ProjectExplorer.ClangClToolChain.LlvmDir");
|
return QStringLiteral("ProjectExplorer.ClangClToolChain.LlvmDir");
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap ClangClToolChain::toMap() const
|
void ClangClToolChain::toMap(QVariantMap &data) const
|
||||||
{
|
{
|
||||||
QVariantMap result = MsvcToolChain::toMap();
|
MsvcToolChain::toMap(data);
|
||||||
result.insert(llvmDirKey(), m_clangPath.toString());
|
data.insert(llvmDirKey(), m_clangPath.toString());
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ClangClToolChain::fromMap(const QVariantMap &data)
|
bool ClangClToolChain::fromMap(const QVariantMap &data)
|
||||||
|
@@ -46,7 +46,7 @@ public:
|
|||||||
QStringList suggestedMkspecList() const override;
|
QStringList suggestedMkspecList() const override;
|
||||||
Abis supportedAbis() const override;
|
Abis supportedAbis() const override;
|
||||||
|
|
||||||
QVariantMap toMap() const override;
|
void toMap(QVariantMap &data) const override;
|
||||||
bool fromMap(const QVariantMap &data) override;
|
bool fromMap(const QVariantMap &data) override;
|
||||||
|
|
||||||
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
||||||
@@ -146,7 +146,7 @@ public:
|
|||||||
void addToEnvironment(Utils::Environment &env) const override;
|
void addToEnvironment(Utils::Environment &env) const override;
|
||||||
Utils::FilePath compilerCommand() const override; // FIXME: Remove
|
Utils::FilePath compilerCommand() const override; // FIXME: Remove
|
||||||
QList<Utils::OutputLineParser *> createOutputParsers() const override;
|
QList<Utils::OutputLineParser *> createOutputParsers() const override;
|
||||||
QVariantMap toMap() const override;
|
void toMap(QVariantMap &data) const override;
|
||||||
bool fromMap(const QVariantMap &data) override;
|
bool fromMap(const QVariantMap &data) override;
|
||||||
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
std::unique_ptr<ToolChainConfigWidget> createConfigurationWidget() override;
|
||||||
BuiltInHeaderPathsRunner createBuiltInHeaderPathsRunner(
|
BuiltInHeaderPathsRunner createBuiltInHeaderPathsRunner(
|
||||||
|
@@ -226,7 +226,9 @@ ToolChain *ToolChain::clone() const
|
|||||||
if (f->supportedToolChainType() == d->m_typeId) {
|
if (f->supportedToolChainType() == d->m_typeId) {
|
||||||
ToolChain *tc = f->create();
|
ToolChain *tc = f->create();
|
||||||
QTC_ASSERT(tc, return nullptr);
|
QTC_ASSERT(tc, return nullptr);
|
||||||
tc->fromMap(toMap());
|
QVariantMap data;
|
||||||
|
toMap(data);
|
||||||
|
tc->fromMap(data);
|
||||||
// New ID for the clone. It's different.
|
// New ID for the clone. It's different.
|
||||||
tc->d->m_id = QUuid::createUuid().toByteArray();
|
tc->d->m_id = QUuid::createUuid().toByteArray();
|
||||||
return tc;
|
return tc;
|
||||||
@@ -242,9 +244,8 @@ ToolChain *ToolChain::clone() const
|
|||||||
Make sure to call this function when deriving.
|
Make sure to call this function when deriving.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
QVariantMap ToolChain::toMap() const
|
void ToolChain::toMap(QVariantMap &result) const
|
||||||
{
|
{
|
||||||
QVariantMap result;
|
|
||||||
QString idToSave = d->m_typeId.toString() + QLatin1Char(':') + QString::fromUtf8(id());
|
QString idToSave = d->m_typeId.toString() + QLatin1Char(':') + QString::fromUtf8(id());
|
||||||
result.insert(QLatin1String(ID_KEY), idToSave);
|
result.insert(QLatin1String(ID_KEY), idToSave);
|
||||||
result.insert(QLatin1String(DISPLAY_NAME_KEY), displayName());
|
result.insert(QLatin1String(DISPLAY_NAME_KEY), displayName());
|
||||||
@@ -265,7 +266,6 @@ QVariantMap ToolChain::toMap() const
|
|||||||
result.insert(d->m_targetAbiKey, d->m_targetAbi.toString());
|
result.insert(d->m_targetAbiKey, d->m_targetAbi.toString());
|
||||||
if (!d->m_compilerCommandKey.isEmpty())
|
if (!d->m_compilerCommandKey.isEmpty())
|
||||||
result.insert(d->m_compilerCommandKey, d->m_compilerCommand.toSettings());
|
result.insert(d->m_compilerCommandKey, d->m_compilerCommand.toSettings());
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ToolChain::toolChainUpdated()
|
void ToolChain::toolChainUpdated()
|
||||||
|
@@ -145,7 +145,7 @@ public:
|
|||||||
|
|
||||||
// Used by the toolchainmanager to save user-generated tool chains.
|
// Used by the toolchainmanager to save user-generated tool chains.
|
||||||
// Make sure to call this function when deriving!
|
// Make sure to call this function when deriving!
|
||||||
virtual QVariantMap toMap() const;
|
virtual void toMap(QVariantMap &map) const;
|
||||||
virtual Tasks validateKit(const Kit *k) const;
|
virtual Tasks validateKit(const Kit *k) const;
|
||||||
|
|
||||||
virtual bool isJobCountSupported() const { return true; }
|
virtual bool isJobCountSupported() const { return true; }
|
||||||
|
@@ -220,7 +220,8 @@ void ToolChainSettingsAccessor::saveToolChains(const Toolchains &toolchains, QWi
|
|||||||
for (const ToolChain *tc : toolchains) {
|
for (const ToolChain *tc : toolchains) {
|
||||||
if (!tc || (!tc->isValid() && tc->isAutoDetected()))
|
if (!tc || (!tc->isValid() && tc->isAutoDetected()))
|
||||||
continue;
|
continue;
|
||||||
const QVariantMap tmp = tc->toMap();
|
QVariantMap tmp;
|
||||||
|
tc->toMap(tmp);
|
||||||
if (tmp.isEmpty())
|
if (tmp.isEmpty())
|
||||||
continue;
|
continue;
|
||||||
data.insert(QString::fromLatin1(TOOLCHAIN_DATA_KEY) + QString::number(count), tmp);
|
data.insert(QString::fromLatin1(TOOLCHAIN_DATA_KEY) + QString::number(count), tmp);
|
||||||
@@ -326,11 +327,10 @@ public:
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap toMap() const final
|
void toMap(QVariantMap &data) const final
|
||||||
{
|
{
|
||||||
QVariantMap data = ToolChain::toMap();
|
ToolChain::toMap(data);
|
||||||
data[TestTokenKey] = token;
|
data[TestTokenKey] = token;
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QByteArray token;
|
QByteArray token;
|
||||||
@@ -339,8 +339,6 @@ private:
|
|||||||
bool m_valid = false;
|
bool m_valid = false;
|
||||||
|
|
||||||
static QList<TTC *> m_toolChains;
|
static QList<TTC *> m_toolChains;
|
||||||
|
|
||||||
public:
|
|
||||||
};
|
};
|
||||||
|
|
||||||
QList<TTC *> TTC::m_toolChains;
|
QList<TTC *> TTC::m_toolChains;
|
||||||
|
@@ -131,12 +131,11 @@ QStringList QnxToolChain::suggestedMkspecList() const
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap QnxToolChain::toMap() const
|
void QnxToolChain::toMap(QVariantMap &data) const
|
||||||
{
|
{
|
||||||
QVariantMap data = GccToolChain::toMap();
|
GccToolChain::toMap(data);
|
||||||
data.insert(QLatin1String(CompilerSdpPath), m_sdpPath.toSettings());
|
data.insert(QLatin1String(CompilerSdpPath), m_sdpPath.toSettings());
|
||||||
data.insert(QLatin1String(CpuDirKey), m_cpuDir);
|
data.insert(QLatin1String(CpuDirKey), m_cpuDir);
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool QnxToolChain::fromMap(const QVariantMap &data)
|
bool QnxToolChain::fromMap(const QVariantMap &data)
|
||||||
|
@@ -21,7 +21,7 @@ public:
|
|||||||
void addToEnvironment(Utils::Environment &env) const override;
|
void addToEnvironment(Utils::Environment &env) const override;
|
||||||
QStringList suggestedMkspecList() const override;
|
QStringList suggestedMkspecList() const override;
|
||||||
|
|
||||||
QVariantMap toMap() const override;
|
void toMap(QVariantMap &data) const override;
|
||||||
bool fromMap(const QVariantMap &data) override;
|
bool fromMap(const QVariantMap &data) override;
|
||||||
|
|
||||||
Utils::FilePath sdpPath() const;
|
Utils::FilePath sdpPath() const;
|
||||||
|
Reference in New Issue
Block a user