Index: Source/core/inspector/CodeGeneratorInstrumentation.py |
diff --git a/Source/core/inspector/CodeGeneratorInstrumentation.py b/Source/core/inspector/CodeGeneratorInstrumentation.py |
index c31371766163373f9e931040a4b25fb3a24b68cd..7be51dbfa81dda485dab5aa1c982377757c8e30b 100755 |
--- a/Source/core/inspector/CodeGeneratorInstrumentation.py |
+++ b/Source/core/inspector/CodeGeneratorInstrumentation.py |
@@ -41,6 +41,8 @@ ${includes} |
namespace WebCore { |
+${forward_declarations} |
+ |
namespace InspectorInstrumentation { |
$methods |
@@ -195,6 +197,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 +205,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 +223,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)) |