| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2008, 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2008, 2010 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2008 David Smith <catfish.man@gmail.com> | 3 * Copyright (C) 2008 David Smith <catfish.man@gmail.com> |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 229 inline bool NodeListsNodeData::deleteThisAndUpdateNodeRareDataIfAboutToRemoveLas
tList(Node& ownerNode) | 229 inline bool NodeListsNodeData::deleteThisAndUpdateNodeRareDataIfAboutToRemoveLas
tList(Node& ownerNode) |
| 230 { | 230 { |
| 231 ASSERT(ownerNode.nodeLists() == this); | 231 ASSERT(ownerNode.nodeLists() == this); |
| 232 if ((m_childNodeList ? 1 : 0) + m_atomicNameCaches.size() + m_tagCollectionC
acheNS.size() != 1) | 232 if ((m_childNodeList ? 1 : 0) + m_atomicNameCaches.size() + m_tagCollectionC
acheNS.size() != 1) |
| 233 return false; | 233 return false; |
| 234 ownerNode.clearNodeLists(); | 234 ownerNode.clearNodeLists(); |
| 235 return true; | 235 return true; |
| 236 } | 236 } |
| 237 #endif | 237 #endif |
| 238 | 238 |
| 239 template <typename Collection> |
| 240 inline PassRefPtrWillBeRawPtr<Collection> ContainerNode::ensureCachedCollection(
CollectionType type) |
| 241 { |
| 242 return ensureNodeLists().addCache<Collection>(*this, type); |
| 243 } |
| 244 |
| 245 template <typename Collection> |
| 246 inline PassRefPtrWillBeRawPtr<Collection> ContainerNode::ensureCachedCollection(
CollectionType type, const AtomicString& name) |
| 247 { |
| 248 return ensureNodeLists().addCache<Collection>(*this, type, name); |
| 249 } |
| 250 |
| 251 template <typename Collection> |
| 252 inline PassRefPtrWillBeRawPtr<Collection> ContainerNode::ensureCachedCollection(
CollectionType type, const AtomicString& namespaceURI, const AtomicString& local
Name) |
| 253 { |
| 254 ASSERT_UNUSED(type, type == TagCollectionType); |
| 255 return ensureNodeLists().addCache(*this, namespaceURI, localName); |
| 256 } |
| 257 |
| 258 template <typename Collection> |
| 259 inline Collection* ContainerNode::cachedCollection(CollectionType type) |
| 260 { |
| 261 NodeListsNodeData* nodeLists = this->nodeLists(); |
| 262 return nodeLists ? nodeLists->cached<Collection>(type) : 0; |
| 263 } |
| 264 |
| 239 } // namespace blink | 265 } // namespace blink |
| 240 | 266 |
| 241 #endif // NodeListsNodeData_h | 267 #endif // NodeListsNodeData_h |
| OLD | NEW |