[CTTE] Node subclasses should take a Document by reference in their constructor ...
authorweinig@apple.com <weinig@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 15 Sep 2013 17:10:27 +0000 (17:10 +0000)
committerweinig@apple.com <weinig@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 15 Sep 2013 17:10:27 +0000 (17:10 +0000)
https://bugs.webkit.org/show_bug.cgi?id=121389

Reviewed by Andreas Kling.

Converts the following to take a Document reference:
    - Element
    - MathMLElement
    - MathMLInlineContainerElement
    - MathMLMathElement
    - MathMLTextElement

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@155813 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 files changed:
Source/WebCore/ChangeLog
Source/WebCore/dom/Document.cpp
Source/WebCore/dom/Element.cpp
Source/WebCore/dom/Element.h
Source/WebCore/dom/PseudoElement.cpp
Source/WebCore/dom/StyledElement.h
Source/WebCore/html/track/WebVTTElement.cpp
Source/WebCore/mathml/MathMLElement.cpp
Source/WebCore/mathml/MathMLElement.h
Source/WebCore/mathml/MathMLInlineContainerElement.cpp
Source/WebCore/mathml/MathMLInlineContainerElement.h
Source/WebCore/mathml/MathMLMathElement.cpp
Source/WebCore/mathml/MathMLMathElement.h
Source/WebCore/mathml/MathMLTextElement.cpp
Source/WebCore/mathml/MathMLTextElement.h
Source/WebCore/mathml/mathtags.in

index 1a34b39..d7ebf5d 100644 (file)
@@ -1,3 +1,17 @@
+2013-09-15  Sam Weinig  <sam@webkit.org>
+
+        [CTTE] Node subclasses should take a Document by reference in their constructor (Part 7)
+        https://bugs.webkit.org/show_bug.cgi?id=121389
+
+        Reviewed by Andreas Kling.
+
+        Converts the following to take a Document reference:
+            - Element
+            - MathMLElement
+            - MathMLInlineContainerElement
+            - MathMLMathElement
+            - MathMLTextElement
+
 2013-09-15  Andreas Kling  <akling@apple.com>
 
         CTTE: RenderMedia and RenderVideo are never anonymous.
index ea7e2aa..974af7a 100644 (file)
@@ -1132,7 +1132,7 @@ PassRefPtr<Element> Document::createElement(const QualifiedName& name, bool crea
     if (element)
         m_sawElementsInKnownNamespaces = true;
     else
-        element = Element::create(name, &document());
+        element = Element::create(name, document());
 
     // <image> uses imgTag so we need a special rule.
     ASSERT((name.matches(imageTag) && element->tagQName().matches(imgTag) && element->tagQName().prefix() == name.prefix()) || name == element->tagQName());
index e24f51d..dc2cde9 100644 (file)
@@ -154,7 +154,7 @@ static Attr* findAttrNodeInList(AttrNodeList& attrNodeList, const QualifiedName&
     return 0;
 }
 
-PassRefPtr<Element> Element::create(const QualifiedName& tagName, Document* document)
+PassRefPtr<Element> Element::create(const QualifiedName& tagName, Document& document)
 {
     return adoptRef(new Element(tagName, document, CreateElement));
 }
index 3de1910..1cac4df 100644 (file)
@@ -66,7 +66,7 @@ enum SpellcheckAttributeState {
 
 class Element : public ContainerNode {
 public:
-    static PassRefPtr<Element> create(const QualifiedName&, Document*);
+    static PassRefPtr<Element> create(const QualifiedName&, Document&);
     virtual ~Element();
 
     DEFINE_ATTRIBUTE_EVENT_LISTENER(abort);
@@ -551,8 +551,8 @@ public:
     void clearHoverAndActiveStatusBeforeDetachingRenderer();
 
 protected:
-    Element(const QualifiedName& tagName, Document* document, ConstructionType type)
-        : ContainerNode(document, type)
+    Element(const QualifiedName& tagName, Document& document, ConstructionType type)
+        : ContainerNode(&document, type)
         , m_tagName(tagName)
     {
     }
index 28a3774..e8f3c59 100644 (file)
@@ -55,7 +55,7 @@ String PseudoElement::pseudoElementNameForEvents(PseudoId pseudoId)
 }
 
 PseudoElement::PseudoElement(Element* host, PseudoId pseudoId)
-    : Element(pseudoElementTagName(), &host->document(), CreatePseudoElement)
+    : Element(pseudoElementTagName(), host->document(), CreatePseudoElement)
     , m_hostElement(host)
     , m_pseudoId(pseudoId)
 {
index 08c4e6f..0cc0b92 100644 (file)
@@ -64,7 +64,7 @@ public:
 
 protected:
     StyledElement(const QualifiedName& name, Document& document, ConstructionType type)
-        : Element(name, &document, type)
+        : Element(name, document, type)
     {
     }
 
index 7ee6844..6a76d60 100644 (file)
@@ -69,7 +69,7 @@ static const QualifiedName& nodeTypeToTagName(WebVTTNodeType nodeType)
 }
 
 WebVTTElement::WebVTTElement(WebVTTNodeType nodeType, Document& document)
-    : Element(nodeTypeToTagName(nodeType), &document, CreateElement)
+    : Element(nodeTypeToTagName(nodeType), document, CreateElement)
     , m_isPastNode(0)
     , m_webVTTNodeType(nodeType)
 {
index c2c2cc8..55b476b 100644 (file)
@@ -39,12 +39,12 @@ namespace WebCore {
     
 using namespace MathMLNames;
     
-MathMLElement::MathMLElement(const QualifiedName& tagName, Document* document)
-    : StyledElement(tagName, *document, CreateStyledElement)
+MathMLElement::MathMLElement(const QualifiedName& tagName, Document& document)
+    : StyledElement(tagName, document, CreateStyledElement)
 {
 }
     
-PassRefPtr<MathMLElement> MathMLElement::create(const QualifiedName& tagName, Document* document)
+PassRefPtr<MathMLElement> MathMLElement::create(const QualifiedName& tagName, Document& document)
 {
     return adoptRef(new MathMLElement(tagName, document));
 }
index 47032aa..36ea014 100644 (file)
@@ -35,13 +35,13 @@ namespace WebCore {
 
 class MathMLElement : public StyledElement {
 public:
-    static PassRefPtr<MathMLElement> create(const QualifiedName& tagName, Document*);
+    static PassRefPtr<MathMLElement> create(const QualifiedName& tagName, Document&);
 
     int colSpan() const;
     int rowSpan() const;
 
 protected:
-    MathMLElement(const QualifiedName& tagName, Document*);
+    MathMLElement(const QualifiedName& tagName, Document&);
 
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
 
index 32d3de9..d340838 100644 (file)
@@ -44,12 +44,12 @@ namespace WebCore {
     
 using namespace MathMLNames;
 
-MathMLInlineContainerElement::MathMLInlineContainerElement(const QualifiedName& tagName, Document* document)
+MathMLInlineContainerElement::MathMLInlineContainerElement(const QualifiedName& tagName, Document& document)
     : MathMLElement(tagName, document)
 {
 }
 
-PassRefPtr<MathMLInlineContainerElement> MathMLInlineContainerElement::create(const QualifiedName& tagName, Document* document)
+PassRefPtr<MathMLInlineContainerElement> MathMLInlineContainerElement::create(const QualifiedName& tagName, Document& document)
 {
     return adoptRef(new MathMLInlineContainerElement(tagName, document));
 }
index 4e80e36..fb18d37 100644 (file)
@@ -34,10 +34,10 @@ namespace WebCore {
     
 class MathMLInlineContainerElement : public MathMLElement {
 public:
-    static PassRefPtr<MathMLInlineContainerElement> create(const QualifiedName& tagName, Document*);
+    static PassRefPtr<MathMLInlineContainerElement> create(const QualifiedName& tagName, Document&);
 
 protected:
-    MathMLInlineContainerElement(const QualifiedName& tagName, Document*);
+    MathMLInlineContainerElement(const QualifiedName& tagName, Document&);
 
 private:
     virtual RenderObject* createRenderer(RenderArena*, RenderStyle*);
index e37ff4b..8a095bd 100644 (file)
 
 namespace WebCore {
 
-inline MathMLMathElement::MathMLMathElement(const QualifiedName& tagName, Document* document)
+inline MathMLMathElement::MathMLMathElement(const QualifiedName& tagName, Document& document)
     : MathMLInlineContainerElement(tagName, document)
 {
 }
 
-PassRefPtr<MathMLMathElement> MathMLMathElement::create(const QualifiedName& tagName, Document* document)
+PassRefPtr<MathMLMathElement> MathMLMathElement::create(const QualifiedName& tagName, Document& document)
 {
     return adoptRef(new MathMLMathElement(tagName, document));
 }
index b37db3d..9564e0e 100644 (file)
@@ -34,10 +34,10 @@ namespace WebCore {
 
 class MathMLMathElement : public MathMLInlineContainerElement {
 public:
-    static PassRefPtr<MathMLMathElement> create(const QualifiedName& tagName, Document*);
+    static PassRefPtr<MathMLMathElement> create(const QualifiedName& tagName, Document&);
 
 private:
-    MathMLMathElement(const QualifiedName& tagName, Document*);
+    MathMLMathElement(const QualifiedName& tagName, Document&);
 
     virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
     virtual RenderObject* createRenderer(RenderArena*, RenderStyle*);
index 7f32875..9f2589c 100644 (file)
@@ -38,12 +38,12 @@ namespace WebCore {
     
 using namespace MathMLNames;
 
-inline MathMLTextElement::MathMLTextElement(const QualifiedName& tagName, Document* document)
+inline MathMLTextElement::MathMLTextElement(const QualifiedName& tagName, Document& document)
     : MathMLElement(tagName, document)
 {
 }
 
-PassRefPtr<MathMLTextElement> MathMLTextElement::create(const QualifiedName& tagName, Document* document)
+PassRefPtr<MathMLTextElement> MathMLTextElement::create(const QualifiedName& tagName, Document& document)
 {
     return adoptRef(new MathMLTextElement(tagName, document));
 }
index 3af93d5..73b8315 100644 (file)
@@ -34,10 +34,10 @@ namespace WebCore {
     
 class MathMLTextElement : public MathMLElement {
 public:
-    static PassRefPtr<MathMLTextElement> create(const QualifiedName& tagName, Document*);
+    static PassRefPtr<MathMLTextElement> create(const QualifiedName& tagName, Document&);
 
 private:
-    MathMLTextElement(const QualifiedName& tagName, Document*);
+    MathMLTextElement(const QualifiedName& tagName, Document&);
 
     virtual RenderObject* createRenderer(RenderArena*, RenderStyle*);
 };
index 11483cc..d8f755c 100644 (file)
@@ -2,6 +2,7 @@ namespace="MathML"
 namespaceURI="http://www.w3.org/1998/Math/MathML"
 guardFactoryWith="ENABLE(MATHML)"
 fallbackInterfaceName="MathMLElement"
+constructorTakesDocumentReference
 
 math
 mfrac interfaceName=MathMLInlineContainerElement