cmTarget: Move ImportInfoMap out of internal class.

This commit is contained in:
Stephen Kelly 2015-10-09 23:15:40 +02:00
parent a48bcabd33
commit 2ee1cb85e8
2 changed files with 7 additions and 8 deletions

View File

@ -64,9 +64,6 @@ const char* cmTarget::GetTargetTypeName(TargetType targetType)
class cmTargetInternals
{
public:
typedef std::map<std::string, cmTarget::ImportInfo> ImportInfoMapType;
ImportInfoMapType ImportInfoMap;
std::vector<std::string> IncludeDirectoriesEntries;
std::vector<cmListFileBacktrace> IncludeDirectoriesBacktraces;
std::vector<std::string> CompileOptionsEntries;
@ -1538,7 +1535,7 @@ void cmTarget::MaybeInvalidatePropertyCache(const std::string& prop)
// Wipe out maps caching information affected by this property.
if(this->IsImported() && cmHasLiteralPrefix(prop, "IMPORTED"))
{
this->Internal->ImportInfoMap.clear();
this->ImportInfoMap.clear();
}
}
@ -2288,16 +2285,15 @@ cmTarget::GetImportInfo(const std::string& config) const
{
config_upper = "NOCONFIG";
}
typedef cmTargetInternals::ImportInfoMapType ImportInfoMapType;
ImportInfoMapType::const_iterator i =
this->Internal->ImportInfoMap.find(config_upper);
if(i == this->Internal->ImportInfoMap.end())
this->ImportInfoMap.find(config_upper);
if(i == this->ImportInfoMap.end())
{
ImportInfo info;
this->ComputeImportInfo(config_upper, info);
ImportInfoMapType::value_type entry(config_upper, info);
i = this->Internal->ImportInfoMap.insert(entry).first;
i = this->ImportInfoMap.insert(entry).first;
}
if(this->GetType() == INTERFACE_LIBRARY)

View File

@ -449,6 +449,9 @@ private:
std::string SharedDeps;
};
typedef std::map<std::string, ImportInfo> ImportInfoMapType;
mutable ImportInfoMapType ImportInfoMap;
ImportInfo const* GetImportInfo(const std::string& config) const;
void ComputeImportInfo(std::string const& desired_config,
ImportInfo& info) const;