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 1008 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1019 return; | 1019 return; |
1020 | 1020 |
1021 for (Node* node = m_head, *next = m_head->next(); node; node = next, next =
node ? node->next() : 0) | 1021 for (Node* node = m_head, *next = m_head->next(); node; node = next, next =
node ? node->next() : 0) |
1022 node->destroy(this->getAllocator()); | 1022 node->destroy(this->getAllocator()); |
1023 } | 1023 } |
1024 | 1024 |
1025 template <typename T, size_t inlineCapacity, typename U, typename V> | 1025 template <typename T, size_t inlineCapacity, typename U, typename V> |
1026 template <typename VisitorDispatcher> | 1026 template <typename VisitorDispatcher> |
1027 void ListHashSet<T, inlineCapacity, U, V>::trace(VisitorDispatcher visitor) | 1027 void ListHashSet<T, inlineCapacity, U, V>::trace(VisitorDispatcher visitor) |
1028 { | 1028 { |
1029 static_assert(HashTraits<T>::weakHandlingFlag == NoWeakHandlingInCollections
, "ListHashSet does not support weakness"); | 1029 static_assert(HashTraits<T>::weakHandlingFlag == NoWeakHandlingInCollections
, "HeapListHashSet does not support weakness, consider using HeapLinkedHashSet i
nstead."); |
1030 // This marks all the nodes and their contents live that can be accessed | 1030 // This marks all the nodes and their contents live that can be accessed |
1031 // through the HashTable. That includes m_head and m_tail so we do not have | 1031 // through the HashTable. That includes m_head and m_tail so we do not have |
1032 // to explicitly trace them here. | 1032 // to explicitly trace them here. |
1033 m_impl.trace(visitor); | 1033 m_impl.trace(visitor); |
1034 } | 1034 } |
1035 | 1035 |
1036 } // namespace WTF | 1036 } // namespace WTF |
1037 | 1037 |
1038 using WTF::ListHashSet; | 1038 using WTF::ListHashSet; |
1039 | 1039 |
1040 #endif // WTF_ListHashSet_h | 1040 #endif // WTF_ListHashSet_h |
OLD | NEW |