| Index: Source/core/dom/LiveNodeList.h
|
| diff --git a/Source/core/dom/LiveNodeList.h b/Source/core/dom/LiveNodeList.h
|
| index 4e7f20087525af20bb9dd1fc0702197953de02c4..77d86956b4808411938a78d17865b454a936d492 100644
|
| --- a/Source/core/dom/LiveNodeList.h
|
| +++ b/Source/core/dom/LiveNodeList.h
|
| @@ -68,7 +68,6 @@ public:
|
| }
|
|
|
| ContainerNode& rootNode() const;
|
| - Node* itemBefore(const Node* previousItem) const;
|
|
|
| ALWAYS_INLINE bool hasIdNameCache() const { return !isLiveNodeListType(type()); }
|
| ALWAYS_INLINE bool isRootedAtDocument() const { return m_rootType == NodeListIsRootedAtDocument || m_rootType == NodeListIsRootedAtDocumentIfOwnerHasItemrefAttr; }
|
| @@ -92,8 +91,12 @@ protected:
|
| ALWAYS_INLINE NodeListRootType rootType() const { return static_cast<NodeListRootType>(m_rootType); }
|
| bool shouldOnlyIncludeDirectChildren() const { return m_shouldOnlyIncludeDirectChildren; }
|
|
|
| + template <typename Collection>
|
| + static Element* iterateForPreviousNode(const Collection&, Node* current);
|
| + template <typename Collection>
|
| + static Element* itemBefore(const Collection&, const Node* previousItem);
|
| +
|
| private:
|
| - Node* iterateForPreviousNode(Node* current) const;
|
| void invalidateIdNameCacheMaps() const;
|
|
|
| RefPtr<ContainerNode> m_ownerNode; // Cannot be null.
|
| @@ -145,13 +148,14 @@ public:
|
|
|
| // Collection IndexCache API.
|
| bool canTraverseBackward() const { return true; }
|
| + Node* itemBefore(const Node* previousItem) const;
|
| Node* traverseToFirstElement(const ContainerNode& root) const;
|
| Node* traverseForwardToOffset(unsigned offset, Node& currentNode, unsigned& currentOffset, const ContainerNode& root) const;
|
|
|
| private:
|
| virtual bool isLiveNodeList() const OVERRIDE FINAL { return true; }
|
|
|
| - mutable CollectionIndexCache<LiveNodeList> m_collectionIndexCache;
|
| + mutable CollectionIndexCache<LiveNodeList, Node> m_collectionIndexCache;
|
| };
|
|
|
| } // namespace WebCore
|
|
|