Browse Source

cmCacheEntry: Retrieve all properties of cache entries

Tobias Hunger 9 years ago
parent
commit
6eee24634b
2 changed files with 12 additions and 0 deletions
  1. 10 0
      Source/cmCacheManager.cxx
  2. 2 0
      Source/cmCacheManager.h

+ 10 - 0
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
 {

+ 2 - 0
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;