| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2005, 2006, 2007, 2008, 2011, 2012 Apple Inc. All rights reserv
ed. | 2 * Copyright (C) 2005, 2006, 2007, 2008, 2011, 2012 Apple Inc. All rights reserv
ed. |
| 3 * Copyright (C) 2011, Benjamin Poulain <ikipou@gmail.com> | 3 * Copyright (C) 2011, Benjamin Poulain <ikipou@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 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 238 | 238 |
| 239 AddResult insertBefore(ValuePeekInType beforeValue, ValuePeekInType newValue
); | 239 AddResult insertBefore(ValuePeekInType beforeValue, ValuePeekInType newValue
); |
| 240 AddResult insertBefore(iterator it, ValuePeekInType newValue) { return m_imp
l.template add<NodeHashFunctions>(newValue, it.node()); } | 240 AddResult insertBefore(iterator it, ValuePeekInType newValue) { return m_imp
l.template add<NodeHashFunctions>(newValue, it.node()); } |
| 241 | 241 |
| 242 void remove(ValuePeekInType); | 242 void remove(ValuePeekInType); |
| 243 void remove(iterator); | 243 void remove(iterator); |
| 244 void clear() { m_impl.clear(); } | 244 void clear() { m_impl.clear(); } |
| 245 template<typename Collection> | 245 template<typename Collection> |
| 246 void removeAll(const Collection& other) { WTF::removeAll(*this, other); } | 246 void removeAll(const Collection& other) { WTF::removeAll(*this, other); } |
| 247 | 247 |
| 248 void trace(typename Allocator::Visitor* visitor) { m_impl.trace(visitor); } | |
| 249 | |
| 250 int64_t modifications() const { return m_impl.modifications(); } | 248 int64_t modifications() const { return m_impl.modifications(); } |
| 251 void checkModifications(int64_t mods) const { m_impl.checkModifications(mods
); } | 249 void checkModifications(int64_t mods) const { m_impl.checkModifications(mods
); } |
| 252 | 250 |
| 253 private: | 251 private: |
| 254 Node* anchor() { return reinterpret_cast<Node*>(&m_anchor); } | 252 Node* anchor() { return reinterpret_cast<Node*>(&m_anchor); } |
| 255 const Node* anchor() const { return reinterpret_cast<const Node*>(&m_anchor)
; } | 253 const Node* anchor() const { return reinterpret_cast<const Node*>(&m_anchor)
; } |
| 256 Node* firstNode() { return reinterpret_cast<Node*>(m_anchor.m_next); } | 254 Node* firstNode() { return reinterpret_cast<Node*>(m_anchor.m_next); } |
| 257 const Node* firstNode() const { return reinterpret_cast<const Node*>(m_ancho
r.m_next); } | 255 const Node* firstNode() const { return reinterpret_cast<const Node*>(m_ancho
r.m_next); } |
| 258 Node* lastNode() { return reinterpret_cast<Node*>(m_anchor.m_prev); } | 256 Node* lastNode() { return reinterpret_cast<Node*>(m_anchor.m_prev); } |
| 259 const Node* lastNode() const { return reinterpret_cast<const Node*>(m_anchor
.m_prev); } | 257 const Node* lastNode() const { return reinterpret_cast<const Node*>(m_anchor
.m_prev); } |
| (...skipping 460 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 720 // instead. | 718 // instead. |
| 721 template<typename ValueType, typename T, typename U> | 719 template<typename ValueType, typename T, typename U> |
| 722 void deleteAllValues(const LinkedHashSet<ValueType, T, U>& set) | 720 void deleteAllValues(const LinkedHashSet<ValueType, T, U>& set) |
| 723 { | 721 { |
| 724 typedef typename LinkedHashSet<ValueType, T, U>::const_iterator iterator; | 722 typedef typename LinkedHashSet<ValueType, T, U>::const_iterator iterator; |
| 725 iterator end = set.end(); | 723 iterator end = set.end(); |
| 726 for (iterator it = set.begin(); it != end; ++it) | 724 for (iterator it = set.begin(); it != end; ++it) |
| 727 delete *it; | 725 delete *it; |
| 728 } | 726 } |
| 729 | 727 |
| 730 #if !ENABLE(OILPAN) | |
| 731 template<typename T, typename U, typename V> | |
| 732 struct NeedsTracing<LinkedHashSet<T, U, V> > { | |
| 733 static const bool value = false; | |
| 734 }; | |
| 735 #endif | |
| 736 | |
| 737 } | 728 } |
| 738 | 729 |
| 739 using WTF::LinkedHashSet; | 730 using WTF::LinkedHashSet; |
| 740 | 731 |
| 741 #endif /* WTF_LinkedHashSet_h */ | 732 #endif /* WTF_LinkedHashSet_h */ |
| OLD | NEW |