diff options
Diffstat (limited to 'extensions/common/features/feature_provider.h')
-rw-r--r-- | extensions/common/features/feature_provider.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/extensions/common/features/feature_provider.h b/extensions/common/features/feature_provider.h index 40d8ab8..ae97513 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 |