Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: base/trace_event/trace_event_memory_overhead.cc

Issue 2539363004: Make base::Value::TYPE a scoped enum. (Closed)
Patch Set: Rebase Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « base/trace_event/trace_event_argument.cc ('k') | base/trace_event/trace_event_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/trace_event/trace_event_memory_overhead.h" 5 #include "base/trace_event/trace_event_memory_overhead.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/bits.h" 9 #include "base/bits.h"
10 #include "base/memory/ref_counted_memory.h" 10 #include "base/memory/ref_counted_memory.h"
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 } 62 }
63 63
64 void TraceEventMemoryOverhead::AddRefCountedString( 64 void TraceEventMemoryOverhead::AddRefCountedString(
65 const RefCountedString& str) { 65 const RefCountedString& str) {
66 Add("RefCountedString", sizeof(RefCountedString)); 66 Add("RefCountedString", sizeof(RefCountedString));
67 AddString(str.data()); 67 AddString(str.data());
68 } 68 }
69 69
70 void TraceEventMemoryOverhead::AddValue(const Value& value) { 70 void TraceEventMemoryOverhead::AddValue(const Value& value) {
71 switch (value.GetType()) { 71 switch (value.GetType()) {
72 case Value::TYPE_NULL: 72 case Value::Type::NONE:
73 case Value::TYPE_BOOLEAN: 73 case Value::Type::BOOLEAN:
74 case Value::TYPE_INTEGER: 74 case Value::Type::INTEGER:
75 case Value::TYPE_DOUBLE: 75 case Value::Type::DOUBLE:
76 Add("FundamentalValue", sizeof(Value)); 76 Add("FundamentalValue", sizeof(Value));
77 break; 77 break;
78 78
79 case Value::TYPE_STRING: { 79 case Value::Type::STRING: {
80 const StringValue* string_value = nullptr; 80 const StringValue* string_value = nullptr;
81 value.GetAsString(&string_value); 81 value.GetAsString(&string_value);
82 Add("StringValue", sizeof(StringValue)); 82 Add("StringValue", sizeof(StringValue));
83 AddString(string_value->GetString()); 83 AddString(string_value->GetString());
84 } break; 84 } break;
85 85
86 case Value::TYPE_BINARY: { 86 case Value::Type::BINARY: {
87 const BinaryValue* binary_value = nullptr; 87 const BinaryValue* binary_value = nullptr;
88 value.GetAsBinary(&binary_value); 88 value.GetAsBinary(&binary_value);
89 Add("BinaryValue", sizeof(BinaryValue) + binary_value->GetSize()); 89 Add("BinaryValue", sizeof(BinaryValue) + binary_value->GetSize());
90 } break; 90 } break;
91 91
92 case Value::TYPE_DICTIONARY: { 92 case Value::Type::DICTIONARY: {
93 const DictionaryValue* dictionary_value = nullptr; 93 const DictionaryValue* dictionary_value = nullptr;
94 value.GetAsDictionary(&dictionary_value); 94 value.GetAsDictionary(&dictionary_value);
95 Add("DictionaryValue", sizeof(DictionaryValue)); 95 Add("DictionaryValue", sizeof(DictionaryValue));
96 for (DictionaryValue::Iterator it(*dictionary_value); !it.IsAtEnd(); 96 for (DictionaryValue::Iterator it(*dictionary_value); !it.IsAtEnd();
97 it.Advance()) { 97 it.Advance()) {
98 AddString(it.key()); 98 AddString(it.key());
99 AddValue(it.value()); 99 AddValue(it.value());
100 } 100 }
101 } break; 101 } break;
102 102
103 case Value::TYPE_LIST: { 103 case Value::Type::LIST: {
104 const ListValue* list_value = nullptr; 104 const ListValue* list_value = nullptr;
105 value.GetAsList(&list_value); 105 value.GetAsList(&list_value);
106 Add("ListValue", sizeof(ListValue)); 106 Add("ListValue", sizeof(ListValue));
107 for (const auto& v : *list_value) 107 for (const auto& v : *list_value)
108 AddValue(*v); 108 AddValue(*v);
109 } break; 109 } break;
110 110
111 default: 111 default:
112 NOTREACHED(); 112 NOTREACHED();
113 } 113 }
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 it.second.allocated_size_in_bytes); 147 it.second.allocated_size_in_bytes);
148 mad->AddScalar("resident_size", MemoryAllocatorDump::kUnitsBytes, 148 mad->AddScalar("resident_size", MemoryAllocatorDump::kUnitsBytes,
149 it.second.resident_size_in_bytes); 149 it.second.resident_size_in_bytes);
150 mad->AddScalar(MemoryAllocatorDump::kNameObjectCount, 150 mad->AddScalar(MemoryAllocatorDump::kNameObjectCount,
151 MemoryAllocatorDump::kUnitsObjects, it.second.count); 151 MemoryAllocatorDump::kUnitsObjects, it.second.count);
152 } 152 }
153 } 153 }
154 154
155 } // namespace trace_event 155 } // namespace trace_event
156 } // namespace base 156 } // namespace base
OLDNEW
« no previous file with comments | « base/trace_event/trace_event_argument.cc ('k') | base/trace_event/trace_event_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698