Index: extensions/common/features/feature_provider.h |
diff --git a/extensions/common/features/feature_provider.h b/extensions/common/features/feature_provider.h |
index 40d8ab84f6d8cf19b69ffd62116ed92b162a9542..ae975137b508e845f81fca7498652006bf2bcaa3 100644 |
--- a/extensions/common/features/feature_provider.h |
+++ b/extensions/common/features/feature_provider.h |
@@ -5,13 +5,18 @@ |
#ifndef EXTENSIONS_COMMON_FEATURES_FEATURE_PROVIDER_H_ |
#define EXTENSIONS_COMMON_FEATURES_FEATURE_PROVIDER_H_ |
+#include <map> |
#include <string> |
#include <vector> |
+#include "base/memory/scoped_ptr.h" |
+ |
namespace extensions { |
class Feature; |
+using FeatureMap = std::map<std::string, scoped_ptr<Feature>>; |
+ |
// Implemented by classes that can vend features. |
class FeatureProvider { |
public: |
@@ -52,8 +57,8 @@ class FeatureProvider { |
// Returns the features inside the |parent| namespace, recursively. |
virtual std::vector<Feature*> GetChildren(const Feature& parent) const = 0; |
- // Returns all features described by this instance, in asciibetical order. |
- virtual const std::vector<std::string>& GetAllFeatureNames() const = 0; |
+ // Returns a map containing all features described by this instance. |
+ virtual const FeatureMap& GetAllFeatures() const = 0; |
}; |
} // namespace extensions |