summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@qt.io>2016-06-10 07:34:49 (GMT)
committerBrad King <brad.king@kitware.com>2016-06-10 13:33:41 (GMT)
commit6eee24634bc1791a64f8146c0f79c769eb9dfb83 (patch)
tree8cf6265f18db9aa8b2f4354ce59a5d9aa2bc825c /Source
parent120899c6980fcd81aa2a0d7b733ae15332a7a133 (diff)
downloadCMake-6eee24634bc1791a64f8146c0f79c769eb9dfb83.zip
CMake-6eee24634bc1791a64f8146c0f79c769eb9dfb83.tar.gz
CMake-6eee24634bc1791a64f8146c0f79c769eb9dfb83.tar.bz2
cmCacheEntry: Retrieve all properties of cache entries
Diffstat (limited to 'Source')
-rw-r--r--Source/cmCacheManager.cxx10
-rw-r--r--Source/cmCacheManager.h2
2 files changed, 12 insertions, 0 deletions
diff --git a/Source/cmCacheManager.cxx b/Source/cmCacheManager.cxx
index 676e84a..233d9ca 100644
--- a/Source/cmCacheManager.cxx
+++ b/Source/cmCacheManager.cxx
@@ -539,6 +539,11 @@ void cmCacheManager::CacheIterator::Next()
}
}
+std::vector<std::string> cmCacheManager::CacheIterator::GetPropertyList() const
+{
+ return this->GetEntry().GetPropertyList();
+}
+
void cmCacheManager::CacheIterator::SetValue(const char* value)
{
if (this->IsAtEnd()) {
@@ -558,6 +563,11 @@ bool cmCacheManager::CacheIterator::GetValueAsBool() const
return cmSystemTools::IsOn(this->GetEntry().Value.c_str());
}
+std::vector<std::string> cmCacheManager::CacheEntry::GetPropertyList() const
+{
+ return this->Properties.GetPropertyList();
+}
+
const char* cmCacheManager::CacheEntry::GetProperty(
const std::string& prop) const
{
diff --git a/Source/cmCacheManager.h b/Source/cmCacheManager.h
index e9b80cb..153e957 100644
--- a/Source/cmCacheManager.h
+++ b/Source/cmCacheManager.h
@@ -38,6 +38,7 @@ private:
std::string Value;
cmState::CacheEntryType Type;
cmPropertyMap Properties;
+ std::vector<std::string> GetPropertyList() const;
const char* GetProperty(const std::string&) const;
void SetProperty(const std::string& property, const char* value);
void AppendProperty(const std::string& property, const char* value,
@@ -60,6 +61,7 @@ public:
bool IsAtEnd() const;
void Next();
std::string GetName() const { return this->Position->first; }
+ std::vector<std::string> GetPropertyList() const;
const char* GetProperty(const std::string&) const;
bool GetPropertyAsBool(const std::string&) const;
bool PropertyExists(const std::string&) const;