<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[164473] trunk/Source/WebCore</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/164473">164473</a></dd>
<dt>Author</dt> <dd>ddkilzer@apple.com</dd>
<dt>Date</dt> <dd>2014-02-20 22:13:39 -0800 (Thu, 20 Feb 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>Stop generating Objective-C bindings for the SVG DOM
&lt;http://webkit.org/b/129107&gt;

Reviewed by Timothy Hatcher.

Bug 114076 stopped compiling the Objective-C bindings for the
SVG DOM, but we continued to generate the header and source
files after that landed in <a href="http://trac.webkit.org/projects/webkit/changeset/147822">r147822</a>.  This patch also stops
generating the unused header and source files.

* DerivedSources.make:
- Split BINDING_IDLS into NON_SVG_BINDING_IDLS and
  SVG_BINDING_IDLS so that they may operated on separately.
- Define BINDING_IDLS again as the full list of IDL files.
- Rename DOM_CLASSES to JS_DOM_CLASSES so that JavaScript
  bindings are still generated for all IDL files.
- Add OBJC_DOM_CLASSES so that Objective-C bindings are only
  generated for non-SVG IDL files.

* bindings/scripts/CodeGeneratorObjC.pm:
(GetBaseClass):
(GetPropertyAttributes):
(AddIncludesForType):
(GenerateHeader):
(GenerateImplementation):
- Remove support for SVG classes.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreDerivedSourcesmake">trunk/Source/WebCore/DerivedSources.make</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptsCodeGeneratorObjCpm">trunk/Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (164472 => 164473)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2014-02-21 06:07:37 UTC (rev 164472)
+++ trunk/Source/WebCore/ChangeLog        2014-02-21 06:13:39 UTC (rev 164473)
</span><span class="lines">@@ -1,3 +1,32 @@
</span><ins>+2014-02-20  David Kilzer  &lt;ddkilzer@apple.com&gt;
+
+        Stop generating Objective-C bindings for the SVG DOM
+        &lt;http://webkit.org/b/129107&gt;
+
+        Reviewed by Timothy Hatcher.
+
+        Bug 114076 stopped compiling the Objective-C bindings for the
+        SVG DOM, but we continued to generate the header and source
+        files after that landed in r147822.  This patch also stops
+        generating the unused header and source files.
+
+        * DerivedSources.make:
+        - Split BINDING_IDLS into NON_SVG_BINDING_IDLS and
+          SVG_BINDING_IDLS so that they may operated on separately.
+        - Define BINDING_IDLS again as the full list of IDL files.
+        - Rename DOM_CLASSES to JS_DOM_CLASSES so that JavaScript
+          bindings are still generated for all IDL files.
+        - Add OBJC_DOM_CLASSES so that Objective-C bindings are only
+          generated for non-SVG IDL files.
+
+        * bindings/scripts/CodeGeneratorObjC.pm:
+        (GetBaseClass):
+        (GetPropertyAttributes):
+        (AddIncludesForType):
+        (GenerateHeader):
+        (GenerateImplementation):
+        - Remove support for SVG classes.
+
</ins><span class="cx"> 2014-02-20  Simon Fraser  &lt;simon.fraser@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         RenderBox::updateShapeOutsideInfoAfterStyleChange shows up on profiles
</span></span></pre></div>
<a id="trunkSourceWebCoreDerivedSourcesmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/DerivedSources.make (164472 => 164473)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/DerivedSources.make        2014-02-21 06:07:37 UTC (rev 164472)
+++ trunk/Source/WebCore/DerivedSources.make        2014-02-21 06:13:39 UTC (rev 164473)
</span><span class="lines">@@ -67,7 +67,7 @@
</span><span class="cx">     $(WebCore)/websockets \
</span><span class="cx"> #
</span><span class="cx"> 
</span><del>-BINDING_IDLS = \
</del><ins>+NON_SVG_BINDING_IDLS = \
</ins><span class="cx">     $(WebCore)/Modules/airplay/WebKitPlaybackTargetAvailabilityEvent.idl \
</span><span class="cx">     $(WebCore)/Modules/encryptedmedia/MediaKeyMessageEvent.idl \
</span><span class="cx">     $(WebCore)/Modules/encryptedmedia/MediaKeyNeededEvent.idl \
</span><span class="lines">@@ -485,6 +485,34 @@
</span><span class="cx">     $(WebCore)/plugins/DOMPluginArray.idl \
</span><span class="cx">     $(WebCore)/storage/Storage.idl \
</span><span class="cx">     $(WebCore)/storage/StorageEvent.idl \
</span><ins>+    $(WebCore)/testing/Internals.idl \
+    $(WebCore)/testing/InternalSettings.idl \
+    $(WebCore)/testing/MallocStatistics.idl \
+    $(WebCore)/testing/MemoryInfo.idl \
+    $(WebCore)/testing/TypeConversions.idl \
+    $(WebCore)/workers/AbstractWorker.idl \
+    $(WebCore)/workers/DedicatedWorkerGlobalScope.idl \
+    $(WebCore)/workers/SharedWorker.idl \
+    $(WebCore)/workers/SharedWorkerGlobalScope.idl \
+    $(WebCore)/workers/Worker.idl \
+    $(WebCore)/workers/WorkerGlobalScope.idl \
+    $(WebCore)/workers/WorkerLocation.idl \
+    $(WebCore)/xml/DOMParser.idl \
+    $(WebCore)/xml/XMLHttpRequest.idl \
+    $(WebCore)/xml/XMLHttpRequestException.idl \
+    $(WebCore)/xml/XMLHttpRequestProgressEvent.idl \
+    $(WebCore)/xml/XMLHttpRequestUpload.idl \
+    $(WebCore)/xml/XMLSerializer.idl \
+    $(WebCore)/xml/XPathEvaluator.idl \
+    $(WebCore)/xml/XPathException.idl \
+    $(WebCore)/xml/XPathExpression.idl \
+    $(WebCore)/xml/XPathNSResolver.idl \
+    $(WebCore)/xml/XPathResult.idl \
+    $(WebCore)/xml/XSLTProcessor.idl \
+    InternalSettingsGenerated.idl
+#
+
+SVG_BINDING_IDLS = \
</ins><span class="cx">     $(WebCore)/svg/SVGAElement.idl \
</span><span class="cx">     $(WebCore)/svg/SVGAltGlyphDefElement.idl \
</span><span class="cx">     $(WebCore)/svg/SVGAltGlyphElement.idl \
</span><span class="lines">@@ -633,32 +661,7 @@
</span><span class="cx">     $(WebCore)/svg/SVGViewElement.idl \
</span><span class="cx">     $(WebCore)/svg/SVGViewSpec.idl \
</span><span class="cx">     $(WebCore)/svg/SVGZoomAndPan.idl \
</span><del>-    $(WebCore)/svg/SVGZoomEvent.idl \
-    $(WebCore)/testing/Internals.idl \
-    $(WebCore)/testing/InternalSettings.idl \
-    $(WebCore)/testing/MallocStatistics.idl \
-    $(WebCore)/testing/MemoryInfo.idl \
-    $(WebCore)/testing/TypeConversions.idl \
-    $(WebCore)/workers/AbstractWorker.idl \
-    $(WebCore)/workers/DedicatedWorkerGlobalScope.idl \
-    $(WebCore)/workers/SharedWorker.idl \
-    $(WebCore)/workers/SharedWorkerGlobalScope.idl \
-    $(WebCore)/workers/Worker.idl \
-    $(WebCore)/workers/WorkerGlobalScope.idl \
-    $(WebCore)/workers/WorkerLocation.idl \
-    $(WebCore)/xml/DOMParser.idl \
-    $(WebCore)/xml/XMLHttpRequest.idl \
-    $(WebCore)/xml/XMLHttpRequestException.idl \
-    $(WebCore)/xml/XMLHttpRequestProgressEvent.idl \
-    $(WebCore)/xml/XMLHttpRequestUpload.idl \
-    $(WebCore)/xml/XMLSerializer.idl \
-    $(WebCore)/xml/XPathEvaluator.idl \
-    $(WebCore)/xml/XPathException.idl \
-    $(WebCore)/xml/XPathExpression.idl \
-    $(WebCore)/xml/XPathNSResolver.idl \
-    $(WebCore)/xml/XPathResult.idl \
-    $(WebCore)/xml/XSLTProcessor.idl \
-    InternalSettingsGenerated.idl
</del><ins>+    $(WebCore)/svg/SVGZoomEvent.idl
</ins><span class="cx"> #
</span><span class="cx"> 
</span><span class="cx"> ifeq ($(OS),MACOS)
</span><span class="lines">@@ -693,7 +696,7 @@
</span><span class="cx">     TouchEvent.idl \
</span><span class="cx">     TouchList.idl
</span><span class="cx"> 
</span><del>-BINDING_IDLS += $(ADDITIONAL_BINDING_IDLS)
</del><ins>+NON_SVG_BINDING_IDLS += $(ADDITIONAL_BINDING_IDLS)
</ins><span class="cx"> 
</span><span class="cx"> all : $(ADDITIONAL_BINDING_IDLS:%.idl=JS%.h)
</span><span class="cx"> 
</span><span class="lines">@@ -707,7 +710,7 @@
</span><span class="cx"> endif # MACOS
</span><span class="cx"> 
</span><span class="cx"> ifneq ($(WTF_PLATFORM_IOS), 1)
</span><del>-BINDING_IDLS += \
</del><ins>+NON_SVG_BINDING_IDLS += \
</ins><span class="cx">     $(WebCore)/dom/Touch.idl \
</span><span class="cx">     $(WebCore)/dom/TouchEvent.idl \
</span><span class="cx">     $(WebCore)/dom/TouchList.idl
</span><span class="lines">@@ -715,10 +718,12 @@
</span><span class="cx"> 
</span><span class="cx"> .PHONY : all
</span><span class="cx"> 
</span><del>-DOM_CLASSES=$(basename $(notdir $(BINDING_IDLS)))
</del><ins>+BINDING_IDLS = $(NON_SVG_BINDING_IDLS) $(SVG_BINDING_IDLS)
</ins><span class="cx"> 
</span><del>-JS_DOM_HEADERS=$(filter-out JSEventListener.h, $(DOM_CLASSES:%=JS%.h))
</del><ins>+JS_DOM_CLASSES=$(basename $(notdir $(BINDING_IDLS)))
</ins><span class="cx"> 
</span><ins>+JS_DOM_HEADERS=$(filter-out JSEventListener.h, $(JS_DOM_CLASSES:%=JS%.h))
+
</ins><span class="cx"> WEB_DOM_HEADERS :=
</span><span class="cx"> 
</span><span class="cx"> all : \
</span><span class="lines">@@ -1149,8 +1154,10 @@
</span><span class="cx"> 
</span><span class="cx"> ifeq ($(OS),MACOS)
</span><span class="cx"> 
</span><del>-OBJC_DOM_HEADERS=$(filter-out DOMDOMWindow.h DOMDOMMimeType.h DOMDOMPlugin.h,$(DOM_CLASSES:%=DOM%.h))
</del><ins>+OBJC_DOM_CLASSES=$(basename $(notdir $(NON_SVG_BINDING_IDLS)))
</ins><span class="cx"> 
</span><ins>+OBJC_DOM_HEADERS=$(filter-out DOMDOMWindow.h DOMDOMMimeType.h DOMDOMPlugin.h,$(OBJC_DOM_CLASSES:%=DOM%.h))
+
</ins><span class="cx"> all : $(OBJC_DOM_HEADERS)
</span><span class="cx"> 
</span><span class="cx"> all : CharsetData.cpp
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptsCodeGeneratorObjCpm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm (164472 => 164473)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm        2014-02-21 06:07:37 UTC (rev 164472)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm        2014-02-21 06:13:39 UTC (rev 164473)
</span><span class="lines">@@ -91,10 +91,7 @@
</span><span class="cx"> END
</span><span class="cx"> 
</span><span class="cx"> # Hashes
</span><del>-my %protocolTypeHash = (&quot;XPathNSResolver&quot; =&gt; 1, &quot;EventListener&quot; =&gt; 1, &quot;EventTarget&quot; =&gt; 1, &quot;NodeFilter&quot; =&gt; 1,
-                        &quot;SVGFilterPrimitiveStandardAttributes&quot; =&gt; 1, 
-                        &quot;SVGTests&quot; =&gt; 1, &quot;SVGLangSpace&quot; =&gt; 1, &quot;SVGExternalResourcesRequired&quot; =&gt; 1, &quot;SVGURIReference&quot; =&gt; 1,
-                        &quot;SVGZoomAndPan&quot; =&gt; 1, &quot;SVGFitToViewBox&quot; =&gt; 1, &quot;SVGAnimatedPathData&quot; =&gt; 1);
</del><ins>+my %protocolTypeHash = (&quot;XPathNSResolver&quot; =&gt; 1, &quot;EventListener&quot; =&gt; 1, &quot;EventTarget&quot; =&gt; 1, &quot;NodeFilter&quot; =&gt; 1);
</ins><span class="cx"> my %nativeObjCTypeHash = (&quot;URL&quot; =&gt; 1, &quot;Color&quot; =&gt; 1);
</span><span class="cx"> 
</span><span class="cx"> # FIXME: this should be replaced with a function that recurses up the tree
</span><span class="lines">@@ -102,15 +99,7 @@
</span><span class="cx"> my %baseTypeHash = (&quot;Object&quot; =&gt; 1, &quot;Node&quot; =&gt; 1, &quot;NodeList&quot; =&gt; 1, &quot;NamedNodeMap&quot; =&gt; 1, &quot;DOMImplementation&quot; =&gt; 1,
</span><span class="cx">                     &quot;Event&quot; =&gt; 1, &quot;CSSRule&quot; =&gt; 1, &quot;CSSValue&quot; =&gt; 1, &quot;StyleSheet&quot; =&gt; 1, &quot;MediaList&quot; =&gt; 1,
</span><span class="cx">                     &quot;Counter&quot; =&gt; 1, &quot;Rect&quot; =&gt; 1, &quot;RGBColor&quot; =&gt; 1, &quot;XPathExpression&quot; =&gt; 1, &quot;XPathResult&quot; =&gt; 1,
</span><del>-                    &quot;NodeIterator&quot; =&gt; 1, &quot;TreeWalker&quot; =&gt; 1, &quot;AbstractView&quot; =&gt; 1, &quot;Blob&quot; =&gt; 1,
-                    &quot;SVGAngle&quot; =&gt; 1, &quot;SVGAnimatedAngle&quot; =&gt; 1, &quot;SVGAnimatedBoolean&quot; =&gt; 1, &quot;SVGAnimatedEnumeration&quot; =&gt; 1,
-                    &quot;SVGAnimatedInteger&quot; =&gt; 1, &quot;SVGAnimatedLength&quot; =&gt; 1, &quot;SVGAnimatedLengthList&quot; =&gt; 1,
-                    &quot;SVGAnimatedNumber&quot; =&gt; 1, &quot;SVGAnimatedNumberList&quot; =&gt; 1,
-                    &quot;SVGAnimatedPreserveAspectRatio&quot; =&gt; 1, &quot;SVGAnimatedRect&quot; =&gt; 1, &quot;SVGAnimatedString&quot; =&gt; 1,
-                    &quot;SVGAnimatedTransformList&quot; =&gt; 1, &quot;SVGLength&quot; =&gt; 1, &quot;SVGLengthList&quot; =&gt; 1, &quot;SVGMatrix&quot; =&gt; 1,
-                    &quot;SVGNumber&quot; =&gt; 1, &quot;SVGNumberList&quot; =&gt; 1, &quot;SVGPathSeg&quot; =&gt; 1, &quot;SVGPathSegList&quot; =&gt; 1, &quot;SVGPoint&quot; =&gt; 1,
-                    &quot;SVGPointList&quot; =&gt; 1, &quot;SVGPreserveAspectRatio&quot; =&gt; 1, &quot;SVGRect&quot; =&gt; 1, &quot;SVGRenderingIntent&quot; =&gt; 1,
-                    &quot;SVGStringList&quot; =&gt; 1, &quot;SVGTransform&quot; =&gt; 1, &quot;SVGTransformList&quot; =&gt; 1, &quot;SVGUnitTypes&quot; =&gt; 1);
</del><ins>+                    &quot;NodeIterator&quot; =&gt; 1, &quot;TreeWalker&quot; =&gt; 1, &quot;AbstractView&quot; =&gt; 1, &quot;Blob&quot; =&gt; 1);
</ins><span class="cx"> 
</span><span class="cx"> # Constants
</span><span class="cx"> my $buildingForIPhone = defined $ENV{PLATFORM_NAME} &amp;&amp; ($ENV{PLATFORM_NAME} eq &quot;iphoneos&quot; or $ENV{PLATFORM_NAME} eq &quot;iphonesimulator&quot;);
</span><span class="lines">@@ -500,7 +489,7 @@
</span><span class="cx"> 
</span><span class="cx">     return $parent if $parent eq &quot;Object&quot; or IsBaseType($parent);
</span><span class="cx">     return &quot;Event&quot; if $parent eq &quot;UIEvent&quot; or $parent eq &quot;MouseEvent&quot;;
</span><del>-    return &quot;CSSValue&quot; if $parent eq &quot;SVGColor&quot; or $parent eq &quot;CSSValueList&quot;;
</del><ins>+    return &quot;CSSValue&quot; if $parent eq &quot;CSSValueList&quot;;
</ins><span class="cx">     return &quot;Node&quot;;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -595,8 +584,6 @@
</span><span class="cx">     # FIXME: &lt;rdar://problem/5049934&gt; Consider using 'nonatomic' on the DOM @property declarations.
</span><span class="cx">     if ($codeGenerator-&gt;IsStringType($type) || IsNativeObjCType($type)) {
</span><span class="cx">         push(@attributes, &quot;copy&quot;);
</span><del>-    } elsif ($codeGenerator-&gt;IsSVGAnimatedType($type)) {
-        push(@attributes, &quot;strong&quot;);
</del><span class="cx">     } elsif (!$codeGenerator-&gt;IsStringType($type) &amp;&amp; !$codeGenerator-&gt;IsPrimitiveType($type) &amp;&amp; $type ne &quot;DOMTimeStamp&quot; &amp;&amp; $type ne &quot;CompareHow&quot;) {
</span><span class="cx">         push(@attributes, &quot;strong&quot;);
</span><span class="cx">     }
</span><span class="lines">@@ -697,12 +684,6 @@
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    if ($codeGenerator-&gt;IsSVGAnimatedType($type)) {
-        $implIncludes{&quot;${type}.h&quot;} = 1;
-        $implIncludes{&quot;DOM${type}Internal.h&quot;} = 1;
-        return;
-    }
-
</del><span class="cx">     if ($type =~ /(\w+)(Abs|Rel)$/) {
</span><span class="cx">         $implIncludes{&quot;$1.h&quot;} = 1;
</span><span class="cx">         $implIncludes{&quot;DOM${type}Internal.h&quot;} = 1;
</span><span class="lines">@@ -742,56 +723,6 @@
</span><span class="cx">     $implIncludes{&quot;DOM${type}Internal.h&quot;} = 1;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-sub GetSVGTypeWithNamespace
-{
-    my $type = shift;
-    my $typeWithNamespace = &quot;WebCore::&quot; . $codeGenerator-&gt;GetSVGTypeNeedingTearOff($type);
-
-    # Special case for DOMSVGNumber
-    $typeWithNamespace =~ s/&lt;/\&lt;WebCore::/ unless $type eq &quot;SVGNumber&quot;;
-    return $typeWithNamespace;
-}
-
-sub GetSVGPropertyTypes
-{
-    my $implType = shift;
-
-    my $svgPropertyType;
-    my $svgListPropertyType;
-    my $svgNativeType;
-
-    return ($svgPropertyType, $svgListPropertyType, $svgNativeType) if not $implType =~ /SVG/;
-
-    $svgNativeType = $codeGenerator-&gt;GetSVGTypeNeedingTearOff($implType);
-    return ($svgPropertyType, $svgListPropertyType, $svgNativeType) if not $svgNativeType;
-
-    # Append space to avoid compilation errors when using  PassRefPtr&lt;$svgNativeType&gt;
-    $svgNativeType = &quot;WebCore::$svgNativeType &quot;;
-    $svgNativeType =~ s/&lt;/\&lt;WebCore::/ if not $svgNativeType =~ /float/;
-
-    my $svgWrappedNativeType = $codeGenerator-&gt;GetSVGWrappedTypeNeedingTearOff($implType);
-    if ($svgNativeType =~ /SVGPropertyTearOff/) {
-        if ($svgWrappedNativeType eq &quot;float&quot;) {
-            # Special case for DOMSVGNumber
-            $svgPropertyType = $svgWrappedNativeType;
-        } else {
-            $svgPropertyType = &quot;WebCore::$svgWrappedNativeType&quot;;
-            $svgPropertyType =~ s/&lt;/\&lt;WebCore::/;
-        }
-    } elsif ($svgNativeType =~ /SVGListPropertyTearOff/ or $svgNativeType =~ /SVGStaticListPropertyTearOff/) {
-        $svgListPropertyType = &quot;WebCore::$svgWrappedNativeType&quot;;
-        $svgListPropertyType =~ s/&lt;/\&lt;WebCore::/;
-    } elsif ($svgNativeType =~ /SVGTransformListPropertyTearOff/) {
-        $svgListPropertyType = &quot;WebCore::$svgWrappedNativeType&quot;;
-        $svgListPropertyType =~ s/&lt;/\&lt;WebCore::/;
-    } elsif ($svgNativeType =~ /SVGPathSegListPropertyTearOff/) {
-        $svgListPropertyType = &quot;WebCore::$svgWrappedNativeType&quot;;
-        $svgListPropertyType =~ s/&lt;/\&lt;WebCore::/;
-    }
-
-    return ($svgPropertyType, $svgListPropertyType, $svgNativeType);
-}
-
</del><span class="cx"> sub ConditionalIsEnabled(\%$)
</span><span class="cx"> {
</span><span class="cx">     my $defines = shift;
</span><span class="lines">@@ -1121,9 +1052,9 @@
</span><span class="cx">         push(@headerContent, split(&quot;\r&quot;, $endAppleCopyright));
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    my %alwaysGenerateForNoSVGBuild = map { $_ =&gt; 1 } qw(DOMHTMLEmbedElement DOMHTMLObjectElement);
</del><ins>+    my %alwaysGenerate = map { $_ =&gt; 1 } qw(DOMHTMLEmbedElement DOMHTMLObjectElement);
</ins><span class="cx"> 
</span><del>-    if (@privateHeaderAttributes &gt; 0 or @privateHeaderFunctions &gt; 0 or exists $alwaysGenerateForNoSVGBuild{$className}) {
</del><ins>+    if (@privateHeaderAttributes &gt; 0 or @privateHeaderFunctions &gt; 0 or exists $alwaysGenerate{$className}) {
</ins><span class="cx">         # - Private category @interface
</span><span class="cx">         if ($interface-&gt;extendedAttributes-&gt;{&quot;AppleCopyright&quot;}) {
</span><span class="cx">             @privateHeaderContentHeader = split(&quot;\r&quot;, $beginAppleCopyrightForHeaderFiles);
</span><span class="lines">@@ -1153,8 +1084,6 @@
</span><span class="cx">         my $implClassNameWithNamespace = &quot;WebCore::&quot; . $implClassName;
</span><span class="cx"> 
</span><span class="cx">         my $implType = $implClassNameWithNamespace;
</span><del>-        my ($svgPropertyType, $svgListPropertyType, $svgNativeType) = GetSVGPropertyTypes($implClassName);
-        $implType = $svgNativeType if $svgNativeType;
</del><span class="cx"> 
</span><span class="cx">         # Generate interface definitions. 
</span><span class="cx">         if ($interface-&gt;extendedAttributes-&gt;{&quot;AppleCopyright&quot;}) {
</span><span class="lines">@@ -1164,12 +1093,6 @@
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         push(@internalHeaderContent, &quot;\n#import &lt;WebCore/$className.h&gt;\n\n&quot;);
</span><del>-        push(@internalHeaderContent, &quot;#import &lt;WebCore/SVGAnimatedPropertyTearOff.h&gt;\n\n&quot;) if $svgPropertyType;
-        if ($svgListPropertyType) {
-            push(@internalHeaderContent, &quot;#import &lt;WebCore/SVGAnimatedListPropertyTearOff.h&gt;\n\n&quot;);
-            push(@internalHeaderContent, &quot;#import &lt;WebCore/SVGTransformListPropertyTearOff.h&gt;\n\n&quot;) if $svgListPropertyType =~ /SVGTransformList/;
-            push(@internalHeaderContent, &quot;#import &lt;WebCore/SVGPathSegListPropertyTearOff.h&gt;\n\n&quot;) if $svgListPropertyType =~ /SVGPathSegList/;
-        }
</del><span class="cx"> 
</span><span class="cx">         if ($interfaceName eq &quot;Node&quot;) {
</span><span class="cx">             push(@internalHeaderContent, &quot;\@protocol DOMEventTarget;\n\n&quot;);
</span><span class="lines">@@ -1177,18 +1100,14 @@
</span><span class="cx"> 
</span><span class="cx">         my $startedNamespace = 0;
</span><span class="cx"> 
</span><del>-        if ($codeGenerator-&gt;IsSVGAnimatedType($interfaceName)) {
-            push(@internalHeaderContent, &quot;#import &lt;WebCore/$implClassName.h&gt;\n\n&quot;);
</del><ins>+        push(@internalHeaderContent, &quot;namespace WebCore {\n&quot;);
+        $startedNamespace = 1;
+        if ($interfaceName eq &quot;Node&quot;) {
+            push(@internalHeaderContent, &quot;class EventTarget;\n    class Node;\n&quot;);
</ins><span class="cx">         } else {
</span><del>-            push(@internalHeaderContent, &quot;namespace WebCore {\n&quot;);
-            $startedNamespace = 1;
-            if ($interfaceName eq &quot;Node&quot;) {
-                push(@internalHeaderContent, &quot;class EventTarget;\n    class Node;\n&quot;);
-            } else {
-                push(@internalHeaderContent, &quot;class $implClassName;\n&quot;);
-            }
-            push(@internalHeaderContent, &quot;}\n\n&quot;);
</del><ins>+            push(@internalHeaderContent, &quot;class $implClassName;\n&quot;);
</ins><span class="cx">         }
</span><ins>+        push(@internalHeaderContent, &quot;}\n\n&quot;);
</ins><span class="cx"> 
</span><span class="cx">         push(@internalHeaderContent, &quot;$implType* core($className *);\n&quot;);
</span><span class="cx">         push(@internalHeaderContent, &quot;$className *kit($implType*);\n&quot;);
</span><span class="lines">@@ -1226,9 +1145,6 @@
</span><span class="cx">     my $numFunctions = @{$interface-&gt;functions};
</span><span class="cx">     my $implType = $implClassNameWithNamespace;
</span><span class="cx"> 
</span><del>-    my ($svgPropertyType, $svgListPropertyType, $svgNativeType) = GetSVGPropertyTypes($implClassName);
-    $implType = $svgNativeType if $svgNativeType;
-
</del><span class="cx">     # - Add default header template.
</span><span class="cx">     if ($interface-&gt;extendedAttributes-&gt;{&quot;AppleCopyright&quot;}) {
</span><span class="cx">         @implContentHeader = split(&quot;\r&quot;, $beginAppleCopyrightForSourceFiles);
</span><span class="lines">@@ -1257,16 +1173,12 @@
</span><span class="cx">     $implIncludes{&quot;DOMCSSValueInternal.h&quot;} = 1 if $interfaceName =~ /.*CSS.*Value/;
</span><span class="cx">     $implIncludes{&quot;DOMEventInternal.h&quot;} = 1 if $interfaceName =~ /.*Event/;
</span><span class="cx">     $implIncludes{&quot;DOMStyleSheetInternal.h&quot;} = 1 if $interfaceName eq &quot;CSSStyleSheet&quot;;
</span><del>-    $implIncludes{&quot;DOMSVGPathSegInternal.h&quot;} = 1 if $interfaceName =~ /^SVGPathSeg.+/;
</del><span class="cx"> 
</span><span class="cx">     if ($interfaceName =~ /(\w+)(Abs|Rel)$/) {
</span><span class="cx">         $implIncludes{&quot;$1.h&quot;} = 1;
</span><span class="cx">     } else {
</span><span class="cx">         if (!$codeGenerator-&gt;SkipIncludeHeader($implClassName)) {
</span><span class="cx">             $implIncludes{&quot;$implClassName.h&quot;} = 1 ;
</span><del>-        } elsif ($codeGenerator-&gt;IsSVGTypeNeedingTearOff($implClassName)) {
-            my $includeType = $codeGenerator-&gt;GetSVGWrappedTypeNeedingTearOff($implClassName);
-            $implIncludes{&quot;${includeType}.h&quot;} = 1;
</del><span class="cx">         }
</span><span class="cx">     } 
</span><span class="cx"> 
</span><span class="lines">@@ -1374,15 +1286,6 @@
</span><span class="cx"> 
</span><span class="cx">             my $getterContentTail = &quot;)&quot;;
</span><span class="cx"> 
</span><del>-            if ($svgPropertyType) {
-                $getterContentHead = &quot;$getterExpressionPrefix&quot;;
-
-                # TODO: Handle special case for DOMSVGLength. We do need Custom code support for this.
-                if ($svgPropertyType eq &quot;WebCore::SVGLength&quot; and $attributeName eq &quot;value&quot;) {
-                    $getterContentHead = &quot;value(WebCore::SVGLengthContext(IMPL-&gt;contextElement()), &quot;;
-                }
-            }
-
</del><span class="cx">             my $attributeTypeSansPtr = $attributeType;
</span><span class="cx">             $attributeTypeSansPtr =~ s/ \*$//; # Remove trailing &quot; *&quot; from pointer types.
</span><span class="cx"> 
</span><span class="lines">@@ -1423,40 +1326,6 @@
</span><span class="cx">             } elsif ($idlType eq &quot;Date&quot;) {
</span><span class="cx">                 $getterContentHead = &quot;kit($getterContentHead&quot;;
</span><span class="cx">                 $getterContentTail .= &quot;)&quot;;
</span><del>-            } elsif ($svgPropertyType) {
-                # Special case for DOMSVGNumber
-                if ($svgPropertyType eq &quot;float&quot;) {
-                    # Intentional leave out closing brace, it's already contained in getterContentTail
-                    $getterContentHead = &quot;IMPL-&gt;propertyReference(&quot;;
-                } else {    
-                    $getterContentHead = &quot;IMPL-&gt;propertyReference().$getterContentHead&quot;;
-                }
-
-                if ($codeGenerator-&gt;IsSVGTypeWithWritablePropertiesNeedingTearOff($idlType) and not defined $attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;Immutable&quot;}) {
-                    my $getter = $getterContentHead;
-                    $getter =~ s/\(\)//;
-                    
-                    my $tearOffType = GetSVGTypeWithNamespace($idlType);
-                    my $selfIsTearOffType = $codeGenerator-&gt;IsSVGTypeNeedingTearOff($implClassName);
-                    if ($selfIsTearOffType) {
-                        $implIncludes{&quot;SVGStaticPropertyWithParentTearOff.h&quot;} = 1;
-                        $tearOffType =~ s/SVGPropertyTearOff&lt;/SVGStaticPropertyWithParentTearOff&lt;$implClassNameWithNamespace, /;
-
-                        my $getter = $getterExpressionPrefix;
-                        $getter =~ s/IMPL-&gt;//;
-                        $getter =~ s/\(//;
-                        my $updateMethod = &quot;&amp;${implClassNameWithNamespace}::update&quot; . $codeGenerator-&gt;WK_ucfirst($getter);
-
-                        $getterContentHead = &quot;${tearOffType}::create(IMPL, $getterContentHead$getterContentTail, $updateMethod)&quot;;
-
-                        $getterContentHead = &quot;kit(WTF::getPtr($getterContentHead&quot;;
-                        $getterContentTail = &quot;))&quot;;
-                    }
-                }
-            } elsif (($codeGenerator-&gt;IsSVGAnimatedType($implClassName) or $implClassName eq &quot;SVGViewSpec&quot;) and $codeGenerator-&gt;IsSVGTypeNeedingTearOff($idlType)) {
-                my $idlTypeWithNamespace = GetSVGTypeWithNamespace($idlType);
-                $getterContentHead = &quot;kit(static_cast&lt;$idlTypeWithNamespace*&gt;($getterContentHead)&quot;;
-                $getterContentTail .= &quot;)&quot;;
</del><span class="cx">             } elsif (IsProtocolType($idlType) and $idlType ne &quot;EventTarget&quot;) {
</span><span class="cx">                 $getterContentHead = &quot;kit($getterContentHead&quot;;
</span><span class="cx">                 $getterContentTail .= &quot;)&quot;;
</span><span class="lines">@@ -1472,34 +1341,8 @@
</span><span class="cx">                 $getterContentHead = &quot;$getterContentHead&quot;;
</span><span class="cx">                 $getterContentTail .= &quot;-&gt;toString()&quot;;                
</span><span class="cx">             } elsif (ConversionNeeded($attribute-&gt;signature-&gt;type)) {
</span><del>-                my $type = $attribute-&gt;signature-&gt;type;
-                if ($codeGenerator-&gt;IsSVGTypeNeedingTearOff($type) and not $implClassName =~ /List$/) {
-                    my $idlTypeWithNamespace = GetSVGTypeWithNamespace($type);
-                    $implIncludes{&quot;$type.h&quot;} = 1 if not $codeGenerator-&gt;SkipIncludeHeader($type);
-                    if ($codeGenerator-&gt;IsSVGTypeWithWritablePropertiesNeedingTearOff($type) and not defined $attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;Immutable&quot;}) {
-                        $idlTypeWithNamespace =~ s/SVGPropertyTearOff&lt;/SVGStaticPropertyTearOff&lt;$implClassNameWithNamespace, /;
-                        $implIncludes{&quot;SVGStaticPropertyTearOff.h&quot;} = 1;
-
-                        my $getter = $getterContentHead;
-                        $getter =~ s/IMPL-&gt;//;
-                        $getter =~ s/\(//;
-                        my $updateMethod = &quot;&amp;${implClassNameWithNamespace}::update&quot; . $codeGenerator-&gt;WK_ucfirst($getter);
-                        $getterContentHead = &quot;kit(WTF::getPtr(${idlTypeWithNamespace}::create(IMPL, $getterContentHead$getterContentTail, $updateMethod&quot;;
-                        $getterContentTail .= &quot;))&quot;;
-                    } elsif ($idlTypeWithNamespace =~ /SVG(Point|PathSeg)List/) {
-                        $getterContentHead = &quot;kit(WTF::getPtr($getterContentHead&quot;;
-                        $getterContentTail .= &quot;))&quot;;
-                    } elsif ($idlTypeWithNamespace =~ /SVGStaticListPropertyTearOff/) {
-                        $getterContentHead = &quot;kit(WTF::getPtr(${idlTypeWithNamespace}::create(IMPL, $getterContentHead&quot;;
-                        $getterContentTail .= &quot;)))&quot;;
-                    } else {
-                        $getterContentHead = &quot;kit(WTF::getPtr(${idlTypeWithNamespace}::create($getterContentHead&quot;;
-                        $getterContentTail .= &quot;)))&quot;;
-                    }
-                } else {
-                    $getterContentHead = &quot;kit(WTF::getPtr($getterContentHead&quot;;
-                    $getterContentTail .= &quot;))&quot;;
-                }
</del><ins>+                $getterContentHead = &quot;kit(WTF::getPtr($getterContentHead&quot;;
+                $getterContentTail .= &quot;))&quot;;
</ins><span class="cx">             }
</span><span class="cx"> 
</span><span class="cx">             my $getterContent;
</span><span class="lines">@@ -1578,55 +1421,20 @@
</span><span class="cx">                     $arg = &quot;core(&quot; . $arg . &quot;)&quot;;
</span><span class="cx">                 }
</span><span class="cx"> 
</span><del>-                if ($svgPropertyType) {
-                    $implIncludes{&quot;ExceptionCode.h&quot;} = 1;
-                    $getterContentHead = &quot;$getterExpressionPrefix&quot;;
-                    push(@implContent, &quot;    if (IMPL-&gt;isReadOnly()) {\n&quot;);
-                    push(@implContent, &quot;        WebCore::raiseOnDOMError(WebCore::NO_MODIFICATION_ALLOWED_ERR);\n&quot;);
-                    push(@implContent, &quot;        return;\n&quot;);
-                    push(@implContent, &quot;    }\n&quot;);
-                    push(@implContent, &quot;    $svgPropertyType&amp; podImpl = IMPL-&gt;propertyReference();\n&quot;);
-                    my $ec = $hasSetterException ? &quot;, ec&quot; : &quot;&quot;;
-                    push(@implContent, &quot;    $exceptionInit\n&quot;) if $hasSetterException;
-
-                    # Special case for DOMSVGNumber
-                    if ($svgPropertyType eq &quot;float&quot;) {
-                        push(@implContent, &quot;    podImpl = $arg;\n&quot;);
-                    } else {
-                        # FIXME: Special case for DOMSVGLength. We do need Custom code support for this.
-                        if ($svgPropertyType eq &quot;WebCore::SVGLength&quot; and $attributeName eq &quot;value&quot;) {
-                            push(@implContent, &quot;    podImpl.$coreSetterName($arg, WebCore::SVGLengthContext(IMPL-&gt;contextElement())$ec);\n&quot;);
-                        } else {
-                            push(@implContent, &quot;    podImpl.$coreSetterName($arg$ec);\n&quot;);
-                        }
-                    }
-
-                    if ($hasSetterException) {
-                        push(@implContent, &quot;    if (!ec)\n&quot;);
-                        push(@implContent, &quot;        IMPL-&gt;commitChange();\n&quot;);
-                        push(@implContent, &quot;    $exceptionRaiseOnError\n&quot;);
-                    } else {
-                        push(@implContent, &quot;    IMPL-&gt;commitChange();\n&quot;);
-                    }
-                } elsif ($svgListPropertyType) {
-                    $getterContentHead = &quot;$getterExpressionPrefix&quot;;
-                    push(@implContent, &quot;    IMPL-&gt;$coreSetterName($arg);\n&quot;);
</del><ins>+                my ($functionName, @arguments) = $codeGenerator-&gt;SetterExpression(\%implIncludes, $interfaceName, $attribute);
+                push(@arguments, $arg);
+                push(@arguments, &quot;ec&quot;) if $hasSetterException;
+                push(@implContent, &quot;    $exceptionInit\n&quot;) if $hasSetterException;
+                if ($attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;ImplementedBy&quot;}) {
+                    my $implementedBy = $attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;ImplementedBy&quot;};
+                    $implIncludes{&quot;${implementedBy}.h&quot;} = 1;
+                    unshift(@arguments, &quot;IMPL&quot;);
+                    $functionName = &quot;${implementedBy}::${functionName}&quot;;
</ins><span class="cx">                 } else {
</span><del>-                    my ($functionName, @arguments) = $codeGenerator-&gt;SetterExpression(\%implIncludes, $interfaceName, $attribute);
-                    push(@arguments, $arg);
-                    push(@arguments, &quot;ec&quot;) if $hasSetterException;
-                    push(@implContent, &quot;    $exceptionInit\n&quot;) if $hasSetterException;
-                    if ($attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;ImplementedBy&quot;}) {
-                        my $implementedBy = $attribute-&gt;signature-&gt;extendedAttributes-&gt;{&quot;ImplementedBy&quot;};
-                        $implIncludes{&quot;${implementedBy}.h&quot;} = 1;
-                        unshift(@arguments, &quot;IMPL&quot;);
-                        $functionName = &quot;${implementedBy}::${functionName}&quot;;
-                    } else {
-                        $functionName = &quot;IMPL-&gt;${functionName}&quot;;
-                    }
-                    push(@implContent, &quot;    ${functionName}(&quot; . join(&quot;, &quot;, @arguments) . &quot;);\n&quot;);
-                    push(@implContent, &quot;    $exceptionRaiseOnError\n&quot;) if $hasSetterException;
</del><ins>+                    $functionName = &quot;IMPL-&gt;${functionName}&quot;;
</ins><span class="cx">                 }
</span><ins>+                push(@implContent, &quot;    ${functionName}(&quot; . join(&quot;, &quot;, @arguments) . &quot;);\n&quot;);
+                push(@implContent, &quot;    $exceptionRaiseOnError\n&quot;) if $hasSetterException;
</ins><span class="cx"> 
</span><span class="cx">                 push(@implContent, &quot;}\n&quot;);
</span><span class="cx">             }
</span><span class="lines">@@ -1737,63 +1545,14 @@
</span><span class="cx">                 push(@functionContent, &quot;        nativeNodeFilter = WebCore::NodeFilter::create(WebCore::ObjCNodeFilterCondition::create($paramName));\n&quot;);
</span><span class="cx">             }
</span><span class="cx"> 
</span><del>-            # FIXME! We need [Custom] support for ObjC, to move these hacks into DOMSVGLength/MatrixCustom.mm
-            my $svgLengthConvertToSpecifiedUnits = ($svgPropertyType and $svgPropertyType eq &quot;WebCore::SVGLength&quot; and $functionName eq &quot;convertToSpecifiedUnits&quot;);
-
-            push(@parameterNames, &quot;WebCore::SVGLengthContext(IMPL-&gt;contextElement())&quot;) if $svgLengthConvertToSpecifiedUnits; 
</del><span class="cx">             push(@parameterNames, &quot;ec&quot;) if $raisesExceptions;
</span><span class="cx"> 
</span><del>-            # Handle arguments that are 'SVGProperty' based (SVGAngle/SVGLength). We need to convert from SVGPropertyTearOff&lt;Type&gt;* to Type,
-            # to be able to call the desired WebCore function. If the conversion fails, we can't extract Type and need to raise an exception.
-            my $currentParameter = -1;
-            foreach my $param (@{$function-&gt;parameters}) {
-                $currentParameter++;
-
-                my $paramName = $param-&gt;name;
-
-                # make a new parameter name if the original conflicts with a property name
-                $paramName = &quot;in&quot; . ucfirst($paramName) if $attributeNames{$paramName};
-
-                my $idlType = $param-&gt;type;
-                next if not $codeGenerator-&gt;IsSVGTypeNeedingTearOff($idlType) or $implClassName =~ /List$/;
-
-                my $implGetter = GetObjCTypeGetter($paramName, $idlType);
-                my $idlTypeWithNamespace = GetSVGTypeWithNamespace($idlType);
-
-                $implIncludes{&quot;ExceptionCode.h&quot;} = 1;
-                push(@functionContent, &quot;    $idlTypeWithNamespace* ${paramName}Core = $implGetter;\n&quot;);
-                push(@functionContent, &quot;    if (!${paramName}Core) {\n&quot;);
-                push(@functionContent, &quot;        WebCore::ExceptionCode ec = WebCore::TYPE_MISMATCH_ERR;\n&quot;);
-                push(@functionContent, &quot;        $exceptionRaiseOnError\n&quot;);
-                if ($returnType eq &quot;void&quot;) { 
-                    push(@functionContent, &quot;        return;\n&quot;);
-                } else {
-                    push(@functionContent, &quot;        return nil;\n&quot;);
-                }
-                push(@functionContent, &quot;    }\n&quot;);
-
-                # Replace the paramter core() getter, by the cached variable.
-                splice(@parameterNames, $currentParameter, 1, &quot;${paramName}Core-&gt;propertyReference()&quot;);
-            }
-
</del><span class="cx">             my $content;
</span><span class="cx">             if ($function-&gt;signature-&gt;extendedAttributes-&gt;{&quot;ImplementedBy&quot;}) {
</span><span class="cx">                 my $implementedBy = $function-&gt;signature-&gt;extendedAttributes-&gt;{&quot;ImplementedBy&quot;};
</span><span class="cx">                 $implIncludes{&quot;${implementedBy}.h&quot;} = 1;
</span><span class="cx">                 unshift(@parameterNames, $caller);
</span><span class="cx">                 $content = &quot;${implementedBy}::&quot; . $codeGenerator-&gt;WK_lcfirst($functionName) . &quot;(&quot; . join(&quot;, &quot;, @parameterNames) . &quot;)&quot;;
</span><del>-            } elsif ($svgPropertyType) {
-                $implIncludes{&quot;ExceptionCode.h&quot;} = 1;
-                push(@functionContent, &quot;    if (IMPL-&gt;isReadOnly()) {\n&quot;);
-                push(@functionContent, &quot;        WebCore::raiseOnDOMError(WebCore::NO_MODIFICATION_ALLOWED_ERR);\n&quot;);
-                if ($returnType eq &quot;void&quot;) {
-                    push(@functionContent, &quot;        return;\n&quot;);
-                } else {
-                    push(@functionContent, &quot;        return nil;\n&quot;);
-                }
-                push(@functionContent, &quot;    }\n&quot;);
-                push(@functionContent, &quot;    $svgPropertyType&amp; podImpl = IMPL-&gt;propertyReference();\n&quot;);
-                $content = &quot;podImpl.&quot; . $codeGenerator-&gt;WK_lcfirst($functionName) . &quot;(&quot; . join(&quot;, &quot;, @parameterNames) . &quot;)&quot;;
</del><span class="cx">             } else {
</span><span class="cx">                 $content = &quot;$caller-&gt;&quot; . $codeGenerator-&gt;WK_lcfirst($functionName) . &quot;(&quot; . join(&quot;, &quot;, @parameterNames) . &quot;)&quot;;
</span><span class="cx">             }
</span><span class="lines">@@ -1803,14 +1562,9 @@
</span><span class="cx">                 if ($raisesExceptions) {
</span><span class="cx">                     push(@functionContent, &quot;    $exceptionInit\n&quot;);
</span><span class="cx">                     push(@functionContent, &quot;    $content;\n&quot;);
</span><del>-                    if ($svgPropertyType) {
-                        push(@functionContent, &quot;    if (!ec)\n&quot;);
-                        push(@functionContent, &quot;        IMPL-&gt;commitChange();\n&quot;);
-                    }
</del><span class="cx">                     push(@functionContent, &quot;    $exceptionRaiseOnError\n&quot;);
</span><span class="cx">                 } else {
</span><span class="cx">                     push(@functionContent, &quot;    $content;\n&quot;);
</span><del>-                    push(@functionContent, &quot;    IMPL-&gt;commitChange();\n&quot;) if $svgPropertyType;
</del><span class="cx">                 }
</span><span class="cx">             } elsif (defined $needsCustom{&quot;NodeToReturn&quot;}) {
</span><span class="cx">                 # Special case the insertBefore, replaceChild, removeChild 
</span><span class="lines">@@ -1831,12 +1585,7 @@
</span><span class="cx">                 $content = &quot;foo&quot;;
</span><span class="cx">             } else {
</span><span class="cx">                 if (ConversionNeeded($function-&gt;signature-&gt;type)) {
</span><del>-                    if ($codeGenerator-&gt;IsSVGTypeNeedingTearOff($function-&gt;signature-&gt;type) and not $implClassName =~ /List$/) {
-                        my $idlTypeWithNamespace = GetSVGTypeWithNamespace($function-&gt;signature-&gt;type);
-                        $content = &quot;kit(WTF::getPtr(${idlTypeWithNamespace}::create($content)))&quot;;
-                    } else {
-                        $content = &quot;kit(WTF::getPtr($content))&quot;;
-                    }
</del><ins>+                    $content = &quot;kit(WTF::getPtr($content))&quot;;
</ins><span class="cx">                 }
</span><span class="cx"> 
</span><span class="cx">                 if ($raisesExceptions) {
</span></span></pre>
</div>
</div>

</body>
</html>