| Index: chrome/browser/sync/syncable/model_type.h
|
| diff --git a/chrome/browser/sync/syncable/model_type.h b/chrome/browser/sync/syncable/model_type.h
|
| index f2dc74ff77da0afd17e7b3e4e614fd0a100feddd..97cb6cd7c2ef5a75d50362df39ae505ccff9ee5b 100644
|
| --- a/chrome/browser/sync/syncable/model_type.h
|
| +++ b/chrome/browser/sync/syncable/model_type.h
|
| @@ -16,6 +16,7 @@
|
|
|
| #include "base/logging.h"
|
| #include "base/time.h"
|
| +#include "chrome/browser/sync/util/enum_set.h"
|
|
|
| namespace base {
|
| class ListValue;
|
| @@ -80,12 +81,15 @@ enum ModelType {
|
| EXTENSION_SETTINGS,
|
| // App notifications.
|
| APP_NOTIFICATIONS,
|
| + LAST_REAL_MODEL_TYPE = APP_NOTIFICATIONS,
|
|
|
| MODEL_TYPE_COUNT,
|
| };
|
|
|
| typedef std::bitset<MODEL_TYPE_COUNT> ModelTypeBitSet;
|
| typedef std::set<ModelType> ModelTypeSet;
|
| +typedef browser_sync::EnumSet<
|
| + ModelType, FIRST_REAL_MODEL_TYPE, LAST_REAL_MODEL_TYPE> ModelEnumSet;
|
|
|
| inline ModelType ModelTypeFromInt(int i) {
|
| DCHECK_GE(i, 0);
|
| @@ -140,15 +144,26 @@ ModelType ModelTypeFromString(const std::string& model_type_string);
|
|
|
| std::string ModelTypeBitSetToString(const ModelTypeBitSet& model_types);
|
|
|
| +std::string ModelEnumSetToString(ModelEnumSet model_types);
|
| +
|
| // Convert a ModelTypeSet to a ModelTypeBitSet.
|
| ModelTypeBitSet ModelTypeBitSetFromSet(const ModelTypeSet& set);
|
|
|
| // Convert a ModelTypeBitSet to a ModelTypeSet.
|
| ModelTypeSet ModelTypeBitSetToSet(const ModelTypeBitSet& bit_set);
|
|
|
| +ModelEnumSet ModelTypeBitSetToEnumSet(const ModelTypeBitSet& bitset);
|
| +
|
| +ModelTypeSet ModelEnumSetToSet(ModelEnumSet enum_set);
|
| +
|
| +ModelEnumSet ModelTypeSetToEnumSet(const ModelTypeSet& model_type_set);
|
| +
|
| // Caller takes ownership of returned list.
|
| base::ListValue* ModelTypeBitSetToValue(const ModelTypeBitSet& model_types);
|
|
|
| +// Caller takes ownership of returned list.
|
| +base::ListValue* ModelEnumSetToValue(ModelEnumSet model_types);
|
| +
|
| ModelTypeBitSet ModelTypeBitSetFromValue(const base::ListValue& value);
|
|
|
| // Caller takes ownership of returned list.
|
| @@ -156,6 +171,8 @@ base::ListValue* ModelTypeSetToValue(const ModelTypeSet& model_types);
|
|
|
| ModelTypeSet ModelTypeSetFromValue(const base::ListValue& value);
|
|
|
| +ModelEnumSet ModelEnumSetFromValue(const base::ListValue& value);
|
| +
|
| // Returns a string corresponding to the syncable tag for this datatype.
|
| std::string ModelTypeToRootTag(ModelType type);
|
|
|
|
|