summaryrefslogtreecommitdiffstats
path: root/chromium/base/values.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/base/values.cc')
-rw-r--r--chromium/base/values.cc15
1 files changed, 15 insertions, 0 deletions
diff --git a/chromium/base/values.cc b/chromium/base/values.cc
index 7d042cdcd45..02e92b7e082 100644
--- a/chromium/base/values.cc
+++ b/chromium/base/values.cc
@@ -320,6 +320,11 @@ const std::string& Value::GetString() const {
return string_value_;
}
+std::string& Value::GetString() {
+ CHECK(is_string());
+ return string_value_;
+}
+
const Value::BlobStorage& Value::GetBlob() const {
CHECK(is_blob());
return binary_value_;
@@ -386,6 +391,11 @@ const std::string* Value::FindStringKey(StringPiece key) const {
return result ? &result->string_value_ : nullptr;
}
+std::string* Value::FindStringKey(StringPiece key) {
+ Value* result = FindKeyOfType(key, Type::STRING);
+ return result ? &result->string_value_ : nullptr;
+}
+
const Value::BlobStorage* Value::FindBlobKey(StringPiece key) const {
const Value* value = FindKeyOfType(key, Type::BINARY);
return value ? &value->binary_value_ : nullptr;
@@ -526,6 +536,11 @@ const std::string* Value::FindStringPath(StringPiece path) const {
return &cur->string_value_;
}
+std::string* Value::FindStringPath(StringPiece path) {
+ return const_cast<std::string*>(
+ static_cast<const Value*>(this)->FindStringPath(path));
+}
+
const Value::BlobStorage* Value::FindBlobPath(StringPiece path) const {
const Value* cur = FindPath(path);
if (!cur || !cur->is_blob())