From 63c0e92c9395083a61fe31cd89bee7e3814f10e8 Mon Sep 17 00:00:00 2001
From: Tobias Hunger <tobias.hunger@qt.io>
Date: Fri, 10 Jun 2016 10:10:07 +0200
Subject: cmState: Expose list of properties of values in the cache

---
 Source/cmState.cxx | 8 ++++++++
 Source/cmState.h   | 1 +
 2 files changed, 9 insertions(+)

diff --git a/Source/cmState.cxx b/Source/cmState.cxx
index 04f07ce..d2cfaba 100644
--- a/Source/cmState.cxx
+++ b/Source/cmState.cxx
@@ -246,6 +246,14 @@ void cmState::SetCacheEntryBoolProperty(std::string const& key,
   it.SetProperty(propertyName, value);
 }
 
+std::vector<std::string> cmState::GetCacheEntryPropertyList(
+  const std::string& key)
+{
+  cmCacheManager::CacheIterator it =
+    this->CacheManager->GetCacheIterator(key.c_str());
+  return it.GetPropertyList();
+}
+
 const char* cmState::GetCacheEntryProperty(std::string const& key,
                                            std::string const& propertyName)
 {
diff --git a/Source/cmState.h b/Source/cmState.h
index 18c45b8..935faec 100644
--- a/Source/cmState.h
+++ b/Source/cmState.h
@@ -247,6 +247,7 @@ public:
                              std::string const& value);
   void SetCacheEntryBoolProperty(std::string const& key,
                                  std::string const& propertyName, bool value);
+  std::vector<std::string> GetCacheEntryPropertyList(std::string const& key);
   const char* GetCacheEntryProperty(std::string const& key,
                                     std::string const& propertyName);
   bool GetCacheEntryPropertyAsBool(std::string const& key,
-- 
cgit v0.12