OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
5 * Copyright (C) 2004, 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. | 5 * Copyright (C) 2004, 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 22 matching lines...) Expand all Loading... |
33 Node* LiveNodeList::virtualOwnerNode() const | 33 Node* LiveNodeList::virtualOwnerNode() const |
34 { | 34 { |
35 return &ownerNode(); | 35 return &ownerNode(); |
36 } | 36 } |
37 | 37 |
38 void LiveNodeList::invalidateCache(Document*) const | 38 void LiveNodeList::invalidateCache(Document*) const |
39 { | 39 { |
40 m_collectionIndexCache.invalidate(); | 40 m_collectionIndexCache.invalidate(); |
41 } | 41 } |
42 | 42 |
| 43 unsigned LiveNodeList::length() const |
| 44 { |
| 45 return m_collectionIndexCache.nodeCount(*this); |
| 46 } |
| 47 |
| 48 Element* LiveNodeList::item(unsigned offset) const |
| 49 { |
| 50 return m_collectionIndexCache.nodeAt(*this, offset); |
| 51 } |
| 52 |
43 Element* LiveNodeList::traverseToFirstElement() const | 53 Element* LiveNodeList::traverseToFirstElement() const |
44 { | 54 { |
45 return firstMatchingElement(*this); | 55 return firstMatchingElement(*this); |
46 } | 56 } |
47 | 57 |
48 Element* LiveNodeList::traverseToLastElement() const | 58 Element* LiveNodeList::traverseToLastElement() const |
49 { | 59 { |
50 return lastMatchingElement(*this); | 60 return lastMatchingElement(*this); |
51 } | 61 } |
52 | 62 |
53 Element* LiveNodeList::traverseForwardToOffset(unsigned offset, Element& current
Node, unsigned& currentOffset) const | 63 Element* LiveNodeList::traverseForwardToOffset(unsigned offset, Element& current
Node, unsigned& currentOffset) const |
54 { | 64 { |
55 return traverseMatchingElementsForwardToOffset(*this, offset, currentNode, c
urrentOffset); | 65 return traverseMatchingElementsForwardToOffset(*this, offset, currentNode, c
urrentOffset); |
56 } | 66 } |
57 | 67 |
58 Element* LiveNodeList::traverseBackwardToOffset(unsigned offset, Element& curren
tNode, unsigned& currentOffset) const | 68 Element* LiveNodeList::traverseBackwardToOffset(unsigned offset, Element& curren
tNode, unsigned& currentOffset) const |
59 { | 69 { |
60 return traverseMatchingElementsBackwardToOffset(*this, offset, currentNode,
currentOffset); | 70 return traverseMatchingElementsBackwardToOffset(*this, offset, currentNode,
currentOffset); |
61 } | 71 } |
62 | 72 |
63 void LiveNodeList::trace(Visitor* visitor) | 73 void LiveNodeList::trace(Visitor* visitor) |
64 { | 74 { |
65 visitor->trace(m_collectionIndexCache); | 75 visitor->trace(m_collectionIndexCache); |
66 LiveNodeListBase::trace(visitor); | 76 LiveNodeListBase::trace(visitor); |
67 NodeList::trace(visitor); | 77 NodeList::trace(visitor); |
68 } | 78 } |
69 | 79 |
70 } // namespace blink | 80 } // namespace blink |
OLD | NEW |