Преглед на файлове

cmCacheEntry: Retrieve all properties of cache entries

Tobias Hunger преди 9 години
родител
ревизия
6eee24634b
променени са 2 файла, в които са добавени 12 реда и са изтрити 0 реда
  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)
 void cmCacheManager::CacheIterator::SetValue(const char* value)
 {
 {
   if (this->IsAtEnd()) {
   if (this->IsAtEnd()) {
@@ -558,6 +563,11 @@ bool cmCacheManager::CacheIterator::GetValueAsBool() const
   return cmSystemTools::IsOn(this->GetEntry().Value.c_str());
   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 char* cmCacheManager::CacheEntry::GetProperty(
   const std::string& prop) const
   const std::string& prop) const
 {
 {

+ 2 - 0
Source/cmCacheManager.h

@@ -38,6 +38,7 @@ private:
     std::string Value;
     std::string Value;
     cmState::CacheEntryType Type;
     cmState::CacheEntryType Type;
     cmPropertyMap Properties;
     cmPropertyMap Properties;
+    std::vector<std::string> GetPropertyList() const;
     const char* GetProperty(const std::string&) const;
     const char* GetProperty(const std::string&) const;
     void SetProperty(const std::string& property, const char* value);
     void SetProperty(const std::string& property, const char* value);
     void AppendProperty(const std::string& property, const char* value,
     void AppendProperty(const std::string& property, const char* value,
@@ -60,6 +61,7 @@ public:
     bool IsAtEnd() const;
     bool IsAtEnd() const;
     void Next();
     void Next();
     std::string GetName() const { return this->Position->first; }
     std::string GetName() const { return this->Position->first; }
+    std::vector<std::string> GetPropertyList() const;
     const char* GetProperty(const std::string&) const;
     const char* GetProperty(const std::string&) const;
     bool GetPropertyAsBool(const std::string&) const;
     bool GetPropertyAsBool(const std::string&) const;
     bool PropertyExists(const std::string&) const;
     bool PropertyExists(const std::string&) const;