Title: [100867] trunk/Source/WebCore
Revision
100867
Author
[email protected]
Date
2011-11-19 20:19:06 -0800 (Sat, 19 Nov 2011)

Log Message

[wx] C++ bindings build fix for move of array classes to WTF.

Modified Paths


Diff

Modified: trunk/Source/WebCore/ChangeLog (100866 => 100867)


--- trunk/Source/WebCore/ChangeLog	2011-11-20 02:12:56 UTC (rev 100866)
+++ trunk/Source/WebCore/ChangeLog	2011-11-20 04:19:06 UTC (rev 100867)
@@ -1,3 +1,13 @@
+2011-11-19  Kevin Ollivier  <[email protected]>
+
+        [wx] C++ bindings build fix for move of array classes to WTF.
+        
+        * bindings/scripts/CodeGeneratorCPP.pm:
+        (GetCPPTypeGetter):
+        (GetNamespaceForClass):
+        (GenerateHeader):
+        (GenerateImplementation):
+
 2011-11-19  Scott Graham  <[email protected]>
 
         Move gamepad to Modules/ (+ some cleanup)

Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorCPP.pm (100866 => 100867)


--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorCPP.pm	2011-11-20 02:12:56 UTC (rev 100866)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorCPP.pm	2011-11-20 04:19:06 UTC (rev 100867)
@@ -262,7 +262,7 @@
     return $argName if $codeGenerator->IsPrimitiveType($type) or $codeGenerator->IsStringType($type);
     return "static_cast<WebCore::Range::CompareHow>($argName)" if $type eq "CompareHow";
     return "WebCore::SerializedScriptValue::create(WTF::String($argName))" if $type eq "SerializedScriptValue";
-    return "toWebCore($argName)";
+    return "to" . GetNamespaceForClass($argName) . "($argName)";
 }
 
 sub AddForwardDeclarationsForType
@@ -341,6 +341,16 @@
     }
 }
 
+sub GetNamespaceForClass
+{
+    my $type = shift;
+    return "WTF" if (($type eq "ArrayBuffer") or ($type eq "ArrayBufferView")); 
+    return "WTF" if (($type eq "Uint8Array") or ($type eq "Uint16Array") or ($type eq "Uint32Array")); 
+    return "WTF" if (($type eq "Int8Array") or ($type eq "Int16Array") or ($type eq "Int32Array")); 
+    return "WTF" if (($type eq "Float32Array") or ($type eq "Float64Array"));    
+    return "WebCore";
+}
+
 sub GenerateHeader
 {
     my $object = shift;
@@ -349,7 +359,8 @@
     my $interfaceName = $dataNode->name;
     my $className = GetClassName($interfaceName);
     my $implClassName = GetImplClassName($interfaceName);
-    my $implClassNameWithNamespace = "WebCore::" . $implClassName;
+    
+    my $implClassNameWithNamespace = GetNamespaceForClass($implClassName) . "::" . $implClassName;
 
     my $parentName = "";
     $parentName = GetParent($dataNode);
@@ -531,8 +542,9 @@
         push(@headerContent, "};\n\n");
     }
 
-    push(@headerContent, "WebCore::$implClassName* toWebCore(const $className&);\n");
-    push(@headerContent, "$className toWebKit(WebCore::$implClassName*);\n");
+    my $namespace = GetNamespaceForClass($implClassName);
+    push(@headerContent, "$namespace" . "::$implClassName* toWebCore(const $className&);\n");
+    push(@headerContent, "$className toWebKit($namespace" . "::$implClassName*);\n");
     if ($dataNode->extendedAttributes->{"PureInterface"}) {
         push(@headerContent, "$className toWebKit(WebUser$interfaceName*);\n");
     }
@@ -588,7 +600,7 @@
     my $className = GetClassName($interfaceName);
     my $implClassName = GetImplClassName($interfaceName);
     my $parentImplClassName = GetParentImplClassName($dataNode);
-    my $implClassNameWithNamespace = "WebCore::" . $implClassName;
+    my $implClassNameWithNamespace = GetNamespaceForClass($implClassName) . "::" . $implClassName;
     my $baseClass = "WebDOM$parentImplClassName";
     my $conditional = $dataNode->extendedAttributes->{"Conditional"};
 
@@ -888,12 +900,13 @@
     # END implementation
 
     # Generate internal interfaces
-    push(@implContent, "WebCore::$implClassName* toWebCore(const $className& wrapper)\n");
+    my $namespace = GetNamespaceForClass($implClassName);
+    push(@implContent, "$namespace" . "::$implClassName* toWebCore(const $className& wrapper)\n");
     push(@implContent, "{\n");
     push(@implContent, "    return wrapper.impl();\n");
     push(@implContent, "}\n\n");
 
-    push(@implContent, "$className toWebKit(WebCore::$implClassName* value)\n");
+    push(@implContent, "$className toWebKit($namespace" . "::$implClassName* value)\n");
     push(@implContent, "{\n");
     push(@implContent, "    return $className(value);\n");
     push(@implContent, "}\n");
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to