| Index: base/values.h
|
| diff --git a/base/values.h b/base/values.h
|
| index 1e1cae3a9a93efaeaa0cc46feb71a8c6d19b2890..e32edecf2ec347d3c146a86920cbec389f584147 100644
|
| --- a/base/values.h
|
| +++ b/base/values.h
|
| @@ -64,7 +64,7 @@ class BASE_EXPORT Value {
|
|
|
| virtual ~Value();
|
|
|
| - static Value* CreateNullValue();
|
| + static scoped_ptr<Value> CreateNullValue();
|
|
|
| // Returns the type of the value stored by the current Value object.
|
| // Each type will be implemented by only one subclass of Value, so it's
|
| @@ -99,6 +99,8 @@ class BASE_EXPORT Value {
|
| // Subclasses return their own type directly in their overrides;
|
| // this works because C++ supports covariant return types.
|
| virtual Value* DeepCopy() const;
|
| + // Preferred version of DeepCopy. TODO(estade): remove the above.
|
| + scoped_ptr<Value> CreateDeepCopy() const;
|
|
|
| // Compares if two Value objects have equal contents.
|
| virtual bool Equals(const Value* other) const;
|
| @@ -368,6 +370,8 @@ class BASE_EXPORT DictionaryValue : public Value {
|
|
|
| // Overridden from Value:
|
| DictionaryValue* DeepCopy() const override;
|
| + // Preferred version of DeepCopy. TODO(estade): remove the above.
|
| + scoped_ptr<DictionaryValue> CreateDeepCopy() const;
|
| bool Equals(const Value* other) const override;
|
|
|
| private:
|
| @@ -400,6 +404,8 @@ class BASE_EXPORT ListValue : public Value {
|
| // Returns true if successful, or false if the index was negative or
|
| // the value is a null pointer.
|
| bool Set(size_t index, Value* in_value);
|
| + // Preferred version of the above. TODO(estade): remove the above.
|
| + bool Set(size_t index, scoped_ptr<Value> in_value);
|
|
|
| // Gets the Value at the given index. Modifies |out_value| (and returns true)
|
| // only if the index falls within the current list range.
|
| @@ -445,6 +451,8 @@ class BASE_EXPORT ListValue : public Value {
|
| iterator Erase(iterator iter, scoped_ptr<Value>* out_value);
|
|
|
| // Appends a Value to the end of the list.
|
| + void Append(scoped_ptr<Value> in_value);
|
| + // Deprecated version of the above. TODO(estade): remove.
|
| void Append(Value* in_value);
|
|
|
| // Convenience forms of Append.
|
| @@ -486,6 +494,9 @@ class BASE_EXPORT ListValue : public Value {
|
| ListValue* DeepCopy() const override;
|
| bool Equals(const Value* other) const override;
|
|
|
| + // Preferred version of DeepCopy. TODO(estade): remove DeepCopy.
|
| + scoped_ptr<ListValue> CreateDeepCopy() const;
|
| +
|
| private:
|
| ValueVector list_;
|
|
|
|
|