X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fthird_party%2FWebKit%2FSource%2Fcore%2Fcss%2FSiblingTraversalStrategies.h;h=c14d3e582a834d825fd63a3b55f9ec4763bb07f3;hb=ff3e2503a20db9193d323c1d19c38c68004dec4a;hp=85d9742ee9a29512874fa2f9307f8eb140a22a79;hpb=172ee7c03df346ff158858709f7f6494e695e0e4;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/third_party/WebKit/Source/core/css/SiblingTraversalStrategies.h b/src/third_party/WebKit/Source/core/css/SiblingTraversalStrategies.h index 85d9742..c14d3e5 100644 --- a/src/third_party/WebKit/Source/core/css/SiblingTraversalStrategies.h +++ b/src/third_party/WebKit/Source/core/css/SiblingTraversalStrategies.h @@ -30,64 +30,64 @@ #define SiblingTraversalStrategies_h #include "core/dom/Element.h" +#include "core/dom/ElementTraversal.h" #include "core/rendering/style/RenderStyle.h" -#include "wtf/UnusedParam.h" namespace WebCore { struct DOMSiblingTraversalStrategy { - bool isFirstChild(Element*) const; - bool isLastChild(Element*) const; - bool isFirstOfType(Element*, const QualifiedName&) const; - bool isLastOfType(Element*, const QualifiedName&) const; - - int countElementsBefore(Element*) const; - int countElementsAfter(Element*) const; - int countElementsOfTypeBefore(Element*, const QualifiedName&) const; - int countElementsOfTypeAfter(Element*, const QualifiedName&) const; + bool isFirstChild(Element&) const; + bool isLastChild(Element&) const; + bool isFirstOfType(Element&, const QualifiedName&) const; + bool isLastOfType(Element&, const QualifiedName&) const; + + int countElementsBefore(Element&) const; + int countElementsAfter(Element&) const; + int countElementsOfTypeBefore(Element&, const QualifiedName&) const; + int countElementsOfTypeAfter(Element&, const QualifiedName&) const; }; -inline bool DOMSiblingTraversalStrategy::isFirstChild(Element* element) const +inline bool DOMSiblingTraversalStrategy::isFirstChild(Element& element) const { - return !element->previousElementSibling(); + return !ElementTraversal::previousSibling(element); } -inline bool DOMSiblingTraversalStrategy::isLastChild(Element* element) const +inline bool DOMSiblingTraversalStrategy::isLastChild(Element& element) const { - return !element->nextElementSibling(); + return !ElementTraversal::nextSibling(element); } -inline bool DOMSiblingTraversalStrategy::isFirstOfType(Element* element, const QualifiedName& type) const +inline bool DOMSiblingTraversalStrategy::isFirstOfType(Element& element, const QualifiedName& type) const { - for (const Element* sibling = element->previousElementSibling(); sibling; sibling = sibling->previousElementSibling()) { + for (const Element* sibling = ElementTraversal::previousSibling(element); sibling; sibling = ElementTraversal::previousSibling(*sibling)) { if (sibling->hasTagName(type)) return false; } return true; } -inline bool DOMSiblingTraversalStrategy::isLastOfType(Element* element, const QualifiedName& type) const +inline bool DOMSiblingTraversalStrategy::isLastOfType(Element& element, const QualifiedName& type) const { - for (const Element* sibling = element->nextElementSibling(); sibling; sibling = sibling->nextElementSibling()) { + for (const Element* sibling = ElementTraversal::nextSibling(element); sibling; sibling = ElementTraversal::nextSibling(*sibling)) { if (sibling->hasTagName(type)) return false; } return true; } -inline int DOMSiblingTraversalStrategy::countElementsBefore(Element* element) const +inline int DOMSiblingTraversalStrategy::countElementsBefore(Element& element) const { int count = 0; - for (const Element* sibling = element->previousElementSibling(); sibling; sibling = sibling->previousElementSibling()) + for (const Element* sibling = ElementTraversal::previousSibling(element); sibling; sibling = ElementTraversal::previousSibling(*sibling)) count++; return count; } -inline int DOMSiblingTraversalStrategy::countElementsOfTypeBefore(Element* element, const QualifiedName& type) const +inline int DOMSiblingTraversalStrategy::countElementsOfTypeBefore(Element& element, const QualifiedName& type) const { int count = 0; - for (const Element* sibling = element->previousElementSibling(); sibling; sibling = sibling->previousElementSibling()) { + for (const Element* sibling = ElementTraversal::previousSibling(element); sibling; sibling = ElementTraversal::previousSibling(*sibling)) { if (sibling->hasTagName(type)) ++count; } @@ -95,19 +95,19 @@ inline int DOMSiblingTraversalStrategy::countElementsOfTypeBefore(Element* eleme return count; } -inline int DOMSiblingTraversalStrategy::countElementsAfter(Element* element) const +inline int DOMSiblingTraversalStrategy::countElementsAfter(Element& element) const { int count = 0; - for (const Element* sibling = element->nextElementSibling(); sibling; sibling = sibling->nextElementSibling()) + for (const Element* sibling = ElementTraversal::nextSibling(element); sibling; sibling = ElementTraversal::nextSibling(*sibling)) ++count; return count; } -inline int DOMSiblingTraversalStrategy::countElementsOfTypeAfter(Element* element, const QualifiedName& type) const +inline int DOMSiblingTraversalStrategy::countElementsOfTypeAfter(Element& element, const QualifiedName& type) const { int count = 0; - for (const Element* sibling = element->nextElementSibling(); sibling; sibling = sibling->nextElementSibling()) { + for (const Element* sibling = ElementTraversal::nextSibling(element); sibling; sibling = ElementTraversal::nextSibling(*sibling)) { if (sibling->hasTagName(type)) ++count; } @@ -122,25 +122,23 @@ struct ShadowDOMSiblingTraversalStrategy { { } - bool isFirstChild(Element*) const; - bool isLastChild(Element*) const; - bool isFirstOfType(Element*, const QualifiedName&) const; - bool isLastOfType(Element*, const QualifiedName&) const; + bool isFirstChild(Element&) const; + bool isLastChild(Element&) const; + bool isFirstOfType(Element&, const QualifiedName&) const; + bool isLastOfType(Element&, const QualifiedName&) const; - int countElementsBefore(Element*) const; - int countElementsAfter(Element*) const; - int countElementsOfTypeBefore(Element*, const QualifiedName&) const; - int countElementsOfTypeAfter(Element*, const QualifiedName&) const; + int countElementsBefore(Element&) const; + int countElementsAfter(Element&) const; + int countElementsOfTypeBefore(Element&, const QualifiedName&) const; + int countElementsOfTypeAfter(Element&, const QualifiedName&) const; private: const Vector& m_siblings; int m_nth; }; -inline bool ShadowDOMSiblingTraversalStrategy::isFirstChild(Element* element) const +inline bool ShadowDOMSiblingTraversalStrategy::isFirstChild(Element& element) const { - UNUSED_PARAM(element); - ASSERT(element == toElement(m_siblings[m_nth])); for (int i = m_nth - 1; i >= 0; --i) { @@ -151,10 +149,8 @@ inline bool ShadowDOMSiblingTraversalStrategy::isFirstChild(Element* element) co return true; } -inline bool ShadowDOMSiblingTraversalStrategy::isLastChild(Element* element) const +inline bool ShadowDOMSiblingTraversalStrategy::isLastChild(Element& element) const { - UNUSED_PARAM(element); - ASSERT(element == toElement(m_siblings[m_nth])); for (size_t i = m_nth + 1; i < m_siblings.size(); ++i) { @@ -165,10 +161,8 @@ inline bool ShadowDOMSiblingTraversalStrategy::isLastChild(Element* element) con return true; } -inline bool ShadowDOMSiblingTraversalStrategy::isFirstOfType(Element* element, const QualifiedName& type) const +inline bool ShadowDOMSiblingTraversalStrategy::isFirstOfType(Element& element, const QualifiedName& type) const { - UNUSED_PARAM(element); - ASSERT(element == toElement(m_siblings[m_nth])); for (int i = m_nth - 1; i >= 0; --i) { @@ -179,10 +173,8 @@ inline bool ShadowDOMSiblingTraversalStrategy::isFirstOfType(Element* element, c return true; } -inline bool ShadowDOMSiblingTraversalStrategy::isLastOfType(Element* element, const QualifiedName& type) const +inline bool ShadowDOMSiblingTraversalStrategy::isLastOfType(Element& element, const QualifiedName& type) const { - UNUSED_PARAM(element); - ASSERT(element == toElement(m_siblings[m_nth])); for (size_t i = m_nth + 1; i < m_siblings.size(); ++i) { @@ -193,10 +185,8 @@ inline bool ShadowDOMSiblingTraversalStrategy::isLastOfType(Element* element, co return true; } -inline int ShadowDOMSiblingTraversalStrategy::countElementsBefore(Element* element) const +inline int ShadowDOMSiblingTraversalStrategy::countElementsBefore(Element& element) const { - UNUSED_PARAM(element); - ASSERT(element == toElement(m_siblings[m_nth])); int count = 0; @@ -208,10 +198,8 @@ inline int ShadowDOMSiblingTraversalStrategy::countElementsBefore(Element* eleme return count; } -inline int ShadowDOMSiblingTraversalStrategy::countElementsAfter(Element* element) const +inline int ShadowDOMSiblingTraversalStrategy::countElementsAfter(Element& element) const { - UNUSED_PARAM(element); - ASSERT(element == toElement(m_siblings[m_nth])); int count = 0; @@ -223,10 +211,8 @@ inline int ShadowDOMSiblingTraversalStrategy::countElementsAfter(Element* elemen return count; } -inline int ShadowDOMSiblingTraversalStrategy::countElementsOfTypeBefore(Element* element, const QualifiedName& type) const +inline int ShadowDOMSiblingTraversalStrategy::countElementsOfTypeBefore(Element& element, const QualifiedName& type) const { - UNUSED_PARAM(element); - ASSERT(element == toElement(m_siblings[m_nth])); int count = 0; @@ -238,10 +224,8 @@ inline int ShadowDOMSiblingTraversalStrategy::countElementsOfTypeBefore(Element* return count; } -inline int ShadowDOMSiblingTraversalStrategy::countElementsOfTypeAfter(Element* element, const QualifiedName& type) const +inline int ShadowDOMSiblingTraversalStrategy::countElementsOfTypeAfter(Element& element, const QualifiedName& type) const { - UNUSED_PARAM(element); - ASSERT(element == toElement(m_siblings[m_nth])); int count = 0;