| Index: cc/debug/traced_value.cc
|
| diff --git a/cc/debug/traced_value.cc b/cc/debug/traced_value.cc
|
| index 5828cb8894e83e7b8b3338469812dd612eee2d18..3b506ae7e370aa8153f4ac566cb7dfd1fd1c9ca9 100644
|
| --- a/cc/debug/traced_value.cc
|
| +++ b/cc/debug/traced_value.cc
|
| @@ -4,34 +4,26 @@
|
|
|
| #include "cc/debug/traced_value.h"
|
|
|
| -#include "base/debug/trace_event_argument.h"
|
| +#include "base/json/json_writer.h"
|
| #include "base/strings/stringprintf.h"
|
| +#include "base/values.h"
|
|
|
| namespace cc {
|
|
|
| -void TracedValue::AppendIDRef(const void* id, base::debug::TracedValue* state) {
|
| - state->BeginDictionary();
|
| - state->SetString("id_ref", base::StringPrintf("%p", id));
|
| - state->EndDictionary();
|
| +scoped_ptr<base::Value> TracedValue::CreateIDRef(const void* id) {
|
| + scoped_ptr<base::DictionaryValue> res(new base::DictionaryValue());
|
| + res->SetString("id_ref", base::StringPrintf("%p", id));
|
| + return res.PassAs<base::Value>();
|
| }
|
|
|
| -void TracedValue::SetIDRef(const void* id,
|
| - base::debug::TracedValue* state,
|
| - const char* name) {
|
| - state->BeginDictionary(name);
|
| - state->SetString("id_ref", base::StringPrintf("%p", id));
|
| - state->EndDictionary();
|
| -}
|
| -
|
| -void TracedValue::MakeDictIntoImplicitSnapshot(base::debug::TracedValue* dict,
|
| - const char* object_name,
|
| - const void* id) {
|
| +void TracedValue::MakeDictIntoImplicitSnapshot(
|
| + base::DictionaryValue* dict, const char* object_name, const void* id) {
|
| dict->SetString("id", base::StringPrintf("%s/%p", object_name, id));
|
| }
|
|
|
| void TracedValue::MakeDictIntoImplicitSnapshotWithCategory(
|
| const char* category,
|
| - base::debug::TracedValue* dict,
|
| + base::DictionaryValue* dict,
|
| const char* object_name,
|
| const void* id) {
|
| dict->SetString("cat", category);
|
| @@ -40,7 +32,7 @@
|
|
|
| void TracedValue::MakeDictIntoImplicitSnapshotWithCategory(
|
| const char* category,
|
| - base::debug::TracedValue* dict,
|
| + base::DictionaryValue* dict,
|
| const char* object_base_type_name,
|
| const char* object_name,
|
| const void* id) {
|
| @@ -49,4 +41,23 @@
|
| MakeDictIntoImplicitSnapshot(dict, object_name, id);
|
| }
|
|
|
| +scoped_refptr<base::debug::ConvertableToTraceFormat> TracedValue::FromValue(
|
| + base::Value* value) {
|
| + return scoped_refptr<base::debug::ConvertableToTraceFormat>(
|
| + new TracedValue(value));
|
| +}
|
| +
|
| +TracedValue::TracedValue(base::Value* value)
|
| + : value_(value) {
|
| +}
|
| +
|
| +TracedValue::~TracedValue() {
|
| +}
|
| +
|
| +void TracedValue::AppendAsTraceFormat(std::string* out) const {
|
| + std::string tmp;
|
| + base::JSONWriter::Write(value_.get(), &tmp);
|
| + *out += tmp;
|
| +}
|
| +
|
| } // namespace cc
|
|
|