| Index: core/inspector/CodeGeneratorInstrumentation.py
|
| diff --git a/core/inspector/CodeGeneratorInstrumentation.py b/core/inspector/CodeGeneratorInstrumentation.py
|
| index c31371766163373f9e931040a4b25fb3a24b68cd..aa0335e6bc24b57d2c3cfb493dfb1b2bbfdc89ad 100755
|
| --- a/core/inspector/CodeGeneratorInstrumentation.py
|
| +++ b/core/inspector/CodeGeneratorInstrumentation.py
|
| @@ -39,14 +39,16 @@ template_h = string.Template("""// Code generated from InspectorInstrumentation.
|
|
|
| ${includes}
|
|
|
| -namespace WebCore {
|
| +namespace blink {
|
| +
|
| +${forward_declarations}
|
|
|
| namespace InspectorInstrumentation {
|
|
|
| $methods
|
| } // namespace InspectorInstrumentation
|
|
|
| -} // namespace WebCore
|
| +} // namespace blink
|
|
|
| #endif // !defined(${file_name}_h)
|
| """)
|
| @@ -82,7 +84,7 @@ template_cpp = string.Template("""// Code generated from InspectorInstrumentatio
|
|
|
| ${includes}
|
|
|
| -namespace WebCore {
|
| +namespace blink {
|
| ${extra_definitions}
|
|
|
| namespace InspectorInstrumentation {
|
| @@ -90,7 +92,7 @@ $methods
|
|
|
| } // namespace InspectorInstrumentation
|
|
|
| -} // namespace WebCore
|
| +} // namespace blink
|
| """)
|
|
|
| template_outofline = string.Template("""
|
| @@ -115,24 +117,26 @@ template_instrumenting_agents_h = string.Template("""// Code generated from Insp
|
| #ifndef InstrumentingAgentsInl_h
|
| #define InstrumentingAgentsInl_h
|
|
|
| +#include "platform/heap/Handle.h"
|
| #include "wtf/FastAllocBase.h"
|
| #include "wtf/Noncopyable.h"
|
| #include "wtf/PassRefPtr.h"
|
| #include "wtf/RefCounted.h"
|
|
|
| -namespace WebCore {
|
| +namespace blink {
|
|
|
| ${forward_list}
|
|
|
| -class InstrumentingAgents : public RefCounted<InstrumentingAgents> {
|
| +class InstrumentingAgents : public RefCountedWillBeGarbageCollectedFinalized<InstrumentingAgents> {
|
| WTF_MAKE_NONCOPYABLE(InstrumentingAgents);
|
| - WTF_MAKE_FAST_ALLOCATED;
|
| + WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED;
|
| public:
|
| - static PassRefPtr<InstrumentingAgents> create()
|
| + static PassRefPtrWillBeRawPtr<InstrumentingAgents> create()
|
| {
|
| - return adoptRef(new InstrumentingAgents());
|
| + return adoptRefWillBeNoop(new InstrumentingAgents());
|
| }
|
| ~InstrumentingAgents() { }
|
| + void trace(Visitor*);
|
| void reset();
|
|
|
| ${accessor_list}
|
| @@ -158,6 +162,11 @@ InstrumentingAgents::InstrumentingAgents()
|
| {
|
| }
|
|
|
| +void InstrumentingAgents::trace(Visitor* visitor)
|
| +{
|
| + $trace_list
|
| +}
|
| +
|
| void InstrumentingAgents::reset()
|
| {
|
| $reset_list
|
| @@ -195,6 +204,7 @@ class File:
|
| self.name = name
|
| self.header_name = self.name + "Inl"
|
| self.includes = [include_inspector_header("InspectorInstrumentation")]
|
| + self.forward_declarations = []
|
| self.declarations = []
|
| for line in map(str.strip, source.split("\n")):
|
| line = re.sub("\s{2,}", " ", line).strip() # Collapse whitespace
|
| @@ -202,9 +212,12 @@ class File:
|
| continue
|
| if line[0] == "#":
|
| self.includes.append(line)
|
| + elif line.startswith("class "):
|
| + self.forward_declarations.append(line)
|
| else:
|
| self.declarations.append(Method(line))
|
| self.includes.sort()
|
| + self.forward_declarations.sort()
|
|
|
| def generate(self, cpp_lines, used_agents):
|
| header_lines = []
|
| @@ -217,6 +230,7 @@ class File:
|
| return template_h.substitute(None,
|
| file_name=self.header_name,
|
| includes="\n".join(self.includes),
|
| + forward_declarations="\n".join(self.forward_declarations),
|
| methods="\n".join(header_lines))
|
|
|
|
|
| @@ -247,6 +261,8 @@ class Method:
|
|
|
| if self.return_type == "bool":
|
| self.default_return_value = "false"
|
| + elif self.return_type == "int":
|
| + self.default_return_value = "0"
|
| elif self.return_type == "String":
|
| self.default_return_value = "\"\""
|
| else:
|
| @@ -440,6 +456,7 @@ def generate_instrumenting_agents(used_agents):
|
| accessor_list = []
|
| member_list = []
|
| init_list = []
|
| + trace_list = []
|
| reset_list = []
|
|
|
| for agent in agents:
|
| @@ -452,14 +469,16 @@ def generate_instrumenting_agents(used_agents):
|
| class_name=class_name,
|
| getter_name=getter_name,
|
| member_name=member_name))
|
| - member_list.append(" %s* %s;" % (class_name, member_name))
|
| - init_list.append("%s(0)" % member_name)
|
| - reset_list.append("%s = 0;" % member_name)
|
| + member_list.append(" RawPtrWillBeMember<%s> %s;" % (class_name, member_name))
|
| + init_list.append("%s(nullptr)" % member_name)
|
| + trace_list.append("visitor->trace(%s);" % member_name)
|
| + reset_list.append("%s = nullptr;" % member_name)
|
|
|
| forward_list.sort()
|
| accessor_list.sort()
|
| member_list.sort()
|
| init_list.sort()
|
| + trace_list.sort()
|
| reset_list.sort()
|
|
|
| header_lines = template_instrumenting_agents_h.substitute(
|
| @@ -471,6 +490,7 @@ def generate_instrumenting_agents(used_agents):
|
| cpp_lines = template_instrumenting_agents_cpp.substitute(
|
| None,
|
| init_list="\n , ".join(init_list),
|
| + trace_list="\n ".join(trace_list),
|
| reset_list="\n ".join(reset_list))
|
|
|
| return header_lines, cpp_lines
|
|
|