Title: [99560] trunk/Source/WebCore
Revision
99560
Author
andreas.kl...@nokia.com
Date
2011-11-08 06:01:27 -0800 (Tue, 08 Nov 2011)

Log Message

CSSValue: Devirtualize addSubresourceStyleURLs().
<http://webkit.org/b/71805>

Reviewed by Antti Koivisto.

Make addSubresourceStyleURLs() non-virtual and call the appropriate
subclass implementation based on the subclass type info.

* css/CSSBorderImageValue.h:
* css/CSSFontFaceSrcValue.h:
* css/CSSPrimitiveValue.h:
* css/CSSReflectValue.h:
* css/CSSValue.cpp:
(WebCore::CSSValue::addSubresourceStyleURLs):
* css/CSSValue.h:
(WebCore::CSSValue::addSubresourceStyleURLs):
* css/CSSValueList.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (99559 => 99560)


--- trunk/Source/WebCore/ChangeLog	2011-11-08 13:46:50 UTC (rev 99559)
+++ trunk/Source/WebCore/ChangeLog	2011-11-08 14:01:27 UTC (rev 99560)
@@ -1,3 +1,23 @@
+2011-11-08  Andreas Kling  <kl...@webkit.org>
+
+        CSSValue: Devirtualize addSubresourceStyleURLs().
+        <http://webkit.org/b/71805>
+
+        Reviewed by Antti Koivisto.
+
+        Make addSubresourceStyleURLs() non-virtual and call the appropriate
+        subclass implementation based on the subclass type info.
+
+        * css/CSSBorderImageValue.h:
+        * css/CSSFontFaceSrcValue.h:
+        * css/CSSPrimitiveValue.h:
+        * css/CSSReflectValue.h:
+        * css/CSSValue.cpp:
+        (WebCore::CSSValue::addSubresourceStyleURLs):
+        * css/CSSValue.h:
+        (WebCore::CSSValue::addSubresourceStyleURLs):
+        * css/CSSValueList.h:
+
 2011-11-08  Andrey Kosyakov  <ca...@chromium.org>
 
         Web Inspector: do not show object popover when selection is active

Modified: trunk/Source/WebCore/css/CSSBorderImageValue.h (99559 => 99560)


--- trunk/Source/WebCore/css/CSSBorderImageValue.h	2011-11-08 13:46:50 UTC (rev 99559)
+++ trunk/Source/WebCore/css/CSSBorderImageValue.h	2011-11-08 14:01:27 UTC (rev 99560)
@@ -42,7 +42,7 @@
 
     CSSValue* imageValue() const { return m_image.get(); }
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
+    void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
 
     // The border image.
     RefPtr<CSSValue> m_image;

Modified: trunk/Source/WebCore/css/CSSFontFaceSrcValue.h (99559 => 99560)


--- trunk/Source/WebCore/css/CSSFontFaceSrcValue.h	2011-11-08 13:46:50 UTC (rev 99559)
+++ trunk/Source/WebCore/css/CSSFontFaceSrcValue.h	2011-11-08 14:01:27 UTC (rev 99560)
@@ -64,7 +64,7 @@
 
     virtual String cssText() const;
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
+    void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
 
 private:
     CSSFontFaceSrcValue(const String& resource, bool local)

Modified: trunk/Source/WebCore/css/CSSPrimitiveValue.h (99559 => 99560)


--- trunk/Source/WebCore/css/CSSPrimitiveValue.h	2011-11-08 13:46:50 UTC (rev 99559)
+++ trunk/Source/WebCore/css/CSSPrimitiveValue.h	2011-11-08 14:01:27 UTC (rev 99560)
@@ -211,7 +211,7 @@
 
     bool isQuirkValue() { return m_isQuirkValue; }
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
+    void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
 
 protected:
     CSSPrimitiveValue(ClassType, int ident);

Modified: trunk/Source/WebCore/css/CSSReflectValue.h (99559 => 99560)


--- trunk/Source/WebCore/css/CSSReflectValue.h	2011-11-08 13:46:50 UTC (rev 99559)
+++ trunk/Source/WebCore/css/CSSReflectValue.h	2011-11-08 14:01:27 UTC (rev 99560)
@@ -49,7 +49,7 @@
 
     virtual String cssText() const;
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
+    void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
 
 private:
     CSSReflectValue(CSSReflectionDirection direction, PassRefPtr<CSSPrimitiveValue> offset, PassRefPtr<CSSValue> mask)

Modified: trunk/Source/WebCore/css/CSSValue.cpp (99559 => 99560)


--- trunk/Source/WebCore/css/CSSValue.cpp	2011-11-08 13:46:50 UTC (rev 99559)
+++ trunk/Source/WebCore/css/CSSValue.cpp	2011-11-08 14:01:27 UTC (rev 99560)
@@ -27,6 +27,12 @@
 #include "config.h"
 #include "CSSValue.h"
 
+#include "CSSBorderImageValue.h"
+#include "CSSFontFaceSrcValue.h"
+#include "CSSPrimitiveValue.h"
+#include "CSSReflectValue.h"
+#include "CSSValueList.h"
+
 namespace WebCore {
 
 CSSValue::Type CSSValue::cssValueType() const
@@ -42,4 +48,18 @@
     return CSS_CUSTOM;
 }
 
+void CSSValue::addSubresourceStyleURLs(ListHashSet<KURL>& urls, const CSSStyleSheet* styleSheet)
+{
+    if (isPrimitiveValue())
+        static_cast<CSSPrimitiveValue*>(this)->addSubresourceStyleURLs(urls, styleSheet);
+    else if (isValueList())
+        static_cast<CSSValueList*>(this)->addSubresourceStyleURLs(urls, styleSheet);
+    else if (classType() == BorderImageClass)
+        static_cast<CSSBorderImageValue*>(this)->addSubresourceStyleURLs(urls, styleSheet);
+    else if (classType() == FontFaceSrcClass)
+        static_cast<CSSFontFaceSrcValue*>(this)->addSubresourceStyleURLs(urls, styleSheet);
+    else if (classType() == ReflectClass)
+        static_cast<CSSReflectValue*>(this)->addSubresourceStyleURLs(urls, styleSheet);
 }
+
+}

Modified: trunk/Source/WebCore/css/CSSValue.h (99559 => 99560)


--- trunk/Source/WebCore/css/CSSValue.h	2011-11-08 13:46:50 UTC (rev 99559)
+++ trunk/Source/WebCore/css/CSSValue.h	2011-11-08 14:01:27 UTC (rev 99560)
@@ -80,7 +80,7 @@
     bool isSVGPaint() const { return m_classType == SVGPaintClass; }
 #endif
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*) { }
+    void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
 
 protected:
 

Modified: trunk/Source/WebCore/css/CSSValueList.h (99559 => 99560)


--- trunk/Source/WebCore/css/CSSValueList.h	2011-11-08 13:46:50 UTC (rev 99559)
+++ trunk/Source/WebCore/css/CSSValueList.h	2011-11-08 14:01:27 UTC (rev 99560)
@@ -58,7 +58,7 @@
 
     virtual String cssText() const;
 
-    virtual void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
+    void addSubresourceStyleURLs(ListHashSet<KURL>&, const CSSStyleSheet*);
 
 protected:
     CSSValueList(ClassType, bool isSpaceSeparated);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to