Index: Source/core/dom/ClassCollection.h |
diff --git a/Source/core/dom/ClassNodeList.h b/Source/core/dom/ClassCollection.h |
similarity index 72% |
rename from Source/core/dom/ClassNodeList.h |
rename to Source/core/dom/ClassCollection.h |
index a6672bc6d86dd162c993ae96de0266629c7ce80d..a906537e0390c11c608d219bfb46e4ab8e59fdde 100644 |
--- a/Source/core/dom/ClassNodeList.h |
+++ b/Source/core/dom/ClassCollection.h |
@@ -27,52 +27,49 @@ |
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
-#ifndef ClassNodeList_h |
-#define ClassNodeList_h |
+#ifndef ClassCollection_h |
+#define ClassCollection_h |
#include "core/dom/Element.h" |
-#include "core/dom/LiveNodeList.h" |
-#include "core/dom/Node.h" |
#include "core/dom/SpaceSplitString.h" |
+#include "core/html/HTMLCollection.h" |
namespace WebCore { |
-class ClassNodeList FINAL : public LiveNodeList { |
+class ClassCollection FINAL : public HTMLCollection { |
public: |
// classNames argument is an AtomicString because it is common for Elements to share the same class names. |
// It is also used to construct a SpaceSplitString (m_classNames) and its constructor requires an AtomicString. |
- static PassRefPtr<ClassNodeList> create(PassRefPtr<ContainerNode> rootNode, CollectionType type, const AtomicString& classNames) |
+ static PassRefPtr<ClassCollection> create(ContainerNode* rootNode, CollectionType type, const AtomicString& classNames) |
{ |
- ASSERT_UNUSED(type, type == ClassNodeListType); |
- return adoptRef(new ClassNodeList(rootNode, classNames)); |
+ ASSERT_UNUSED(type, type == ClassCollectionType); |
+ return adoptRef(new ClassCollection(rootNode, classNames)); |
} |
- virtual ~ClassNodeList(); |
+ virtual ~ClassCollection(); |
- bool nodeMatchesInlined(const Element&) const; |
+ bool elementMatches(const Element&) const; |
private: |
- ClassNodeList(PassRefPtr<ContainerNode> rootNode, const AtomicString& classNames); |
- |
- virtual bool nodeMatches(const Element&) const OVERRIDE; |
+ ClassCollection(ContainerNode* rootNode, const AtomicString& classNames); |
SpaceSplitString m_classNames; |
AtomicString m_originalClassNames; |
}; |
-inline bool ClassNodeList::nodeMatchesInlined(const Element& testNode) const |
+inline bool ClassCollection::elementMatches(const Element& testElement) const |
{ |
- if (!testNode.hasClass()) |
+ if (!testElement.hasClass()) |
return false; |
if (!m_classNames.size()) |
return false; |
// FIXME: DOM4 allows getElementsByClassName to return non StyledElement. |
// https://bugs.webkit.org/show_bug.cgi?id=94718 |
- if (!testNode.isStyledElement()) |
+ if (!testElement.isStyledElement()) |
return false; |
- return testNode.classNames().containsAll(m_classNames); |
+ return testElement.classNames().containsAll(m_classNames); |
} |
} // namespace WebCore |
-#endif // ClassNodeList_h |
+#endif // ClassCollection_h |