OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
8 * | 8 * |
9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 } | 42 } |
43 ~CollectionCache(); | 43 ~CollectionCache(); |
44 | 44 |
45 void reset(); | 45 void reset(); |
46 void swap(CollectionCache&); | 46 void swap(CollectionCache&); |
47 | 47 |
48 void checkConsistency(); | 48 void checkConsistency(); |
49 | 49 |
50 typedef HashMap<AtomicStringImpl*, Vector<Element*>*> NodeCacheMap; | 50 typedef HashMap<AtomicStringImpl*, Vector<Element*>*> NodeCacheMap; |
51 | 51 |
52 unsigned version; | 52 uint64_t version; |
53 Element* current; | 53 Element* current; |
54 unsigned position; | 54 unsigned position; |
55 unsigned length; | 55 unsigned length; |
56 int elementsArrayPosition; | 56 int elementsArrayPosition; |
57 NodeCacheMap idCache; | 57 NodeCacheMap idCache; |
58 NodeCacheMap nameCache; | 58 NodeCacheMap nameCache; |
59 bool hasLength; | 59 bool hasLength; |
60 bool hasNameCache; | 60 bool hasNameCache; |
61 | 61 |
62 private: | 62 private: |
63 static void copyCacheMap(NodeCacheMap&, const NodeCacheMap&); | 63 static void copyCacheMap(NodeCacheMap&, const NodeCacheMap&); |
64 }; | 64 }; |
65 | 65 |
66 #if ASSERT_DISABLED | 66 #if ASSERT_DISABLED |
67 inline void CollectionCache::checkConsistency() { } | 67 inline void CollectionCache::checkConsistency() { } |
68 #endif | 68 #endif |
69 | 69 |
70 } // namespace | 70 } // namespace |
71 | 71 |
72 #endif | 72 #endif |
OLD | NEW |