| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2014 Google Inc. All rights reserved. | 2 * Copyright (C) 2014 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 134 for (const auto& tagName : *other.m_tagNames) | 134 for (const auto& tagName : *other.m_tagNames) |
| 135 addTagName(tagName); | 135 addTagName(tagName); |
| 136 } | 136 } |
| 137 | 137 |
| 138 if (other.m_attributes) { | 138 if (other.m_attributes) { |
| 139 for (const auto& attribute : *other.m_attributes) | 139 for (const auto& attribute : *other.m_attributes) |
| 140 addAttribute(attribute); | 140 addAttribute(attribute); |
| 141 } | 141 } |
| 142 } | 142 } |
| 143 | 143 |
| 144 WillBeHeapHashSet<AtomicString>& InvalidationSet::ensureClassSet() | 144 HashSet<AtomicString>& InvalidationSet::ensureClassSet() |
| 145 { | 145 { |
| 146 if (!m_classes) | 146 if (!m_classes) |
| 147 m_classes = adoptPtrWillBeNoop(new WillBeHeapHashSet<AtomicString>); | 147 m_classes = adoptPtr(new HashSet<AtomicString>); |
| 148 return *m_classes; | 148 return *m_classes; |
| 149 } | 149 } |
| 150 | 150 |
| 151 WillBeHeapHashSet<AtomicString>& InvalidationSet::ensureIdSet() | 151 HashSet<AtomicString>& InvalidationSet::ensureIdSet() |
| 152 { | 152 { |
| 153 if (!m_ids) | 153 if (!m_ids) |
| 154 m_ids = adoptPtrWillBeNoop(new WillBeHeapHashSet<AtomicString>); | 154 m_ids = adoptPtr(new HashSet<AtomicString>); |
| 155 return *m_ids; | 155 return *m_ids; |
| 156 } | 156 } |
| 157 | 157 |
| 158 WillBeHeapHashSet<AtomicString>& InvalidationSet::ensureTagNameSet() | 158 HashSet<AtomicString>& InvalidationSet::ensureTagNameSet() |
| 159 { | 159 { |
| 160 if (!m_tagNames) | 160 if (!m_tagNames) |
| 161 m_tagNames = adoptPtrWillBeNoop(new WillBeHeapHashSet<AtomicString>); | 161 m_tagNames = adoptPtr(new HashSet<AtomicString>); |
| 162 return *m_tagNames; | 162 return *m_tagNames; |
| 163 } | 163 } |
| 164 | 164 |
| 165 WillBeHeapHashSet<AtomicString>& InvalidationSet::ensureAttributeSet() | 165 HashSet<AtomicString>& InvalidationSet::ensureAttributeSet() |
| 166 { | 166 { |
| 167 if (!m_attributes) | 167 if (!m_attributes) |
| 168 m_attributes = adoptPtrWillBeNoop(new WillBeHeapHashSet<AtomicString>); | 168 m_attributes = adoptPtr(new HashSet<AtomicString>); |
| 169 return *m_attributes; | 169 return *m_attributes; |
| 170 } | 170 } |
| 171 | 171 |
| 172 void InvalidationSet::addClass(const AtomicString& className) | 172 void InvalidationSet::addClass(const AtomicString& className) |
| 173 { | 173 { |
| 174 if (wholeSubtreeInvalid()) | 174 if (wholeSubtreeInvalid()) |
| 175 return; | 175 return; |
| 176 ensureClassSet().add(className); | 176 ensureClassSet().add(className); |
| 177 } | 177 } |
| 178 | 178 |
| (...skipping 26 matching lines...) Expand all Loading... |
| 205 m_allDescendantsMightBeInvalid = true; | 205 m_allDescendantsMightBeInvalid = true; |
| 206 m_customPseudoInvalid = false; | 206 m_customPseudoInvalid = false; |
| 207 m_treeBoundaryCrossing = false; | 207 m_treeBoundaryCrossing = false; |
| 208 m_insertionPointCrossing = false; | 208 m_insertionPointCrossing = false; |
| 209 m_classes = nullptr; | 209 m_classes = nullptr; |
| 210 m_ids = nullptr; | 210 m_ids = nullptr; |
| 211 m_tagNames = nullptr; | 211 m_tagNames = nullptr; |
| 212 m_attributes = nullptr; | 212 m_attributes = nullptr; |
| 213 } | 213 } |
| 214 | 214 |
| 215 DEFINE_TRACE(InvalidationSet) | |
| 216 { | |
| 217 #if ENABLE(OILPAN) | |
| 218 visitor->trace(m_classes); | |
| 219 visitor->trace(m_ids); | |
| 220 visitor->trace(m_tagNames); | |
| 221 visitor->trace(m_attributes); | |
| 222 #endif | |
| 223 } | |
| 224 | |
| 225 void InvalidationSet::toTracedValue(TracedValue* value) const | 215 void InvalidationSet::toTracedValue(TracedValue* value) const |
| 226 { | 216 { |
| 227 value->beginDictionary(); | 217 value->beginDictionary(); |
| 228 | 218 |
| 229 value->setString("id", descendantInvalidationSetToIdString(*this)); | 219 value->setString("id", descendantInvalidationSetToIdString(*this)); |
| 230 | 220 |
| 231 if (m_allDescendantsMightBeInvalid) | 221 if (m_allDescendantsMightBeInvalid) |
| 232 value->setBoolean("allDescendantsMightBeInvalid", true); | 222 value->setBoolean("allDescendantsMightBeInvalid", true); |
| 233 if (m_customPseudoInvalid) | 223 if (m_customPseudoInvalid) |
| 234 value->setBoolean("customPseudoInvalid", true); | 224 value->setBoolean("customPseudoInvalid", true); |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 273 { | 263 { |
| 274 RefPtr<TracedValue> value = TracedValue::create(); | 264 RefPtr<TracedValue> value = TracedValue::create(); |
| 275 value->beginArray("InvalidationSet"); | 265 value->beginArray("InvalidationSet"); |
| 276 toTracedValue(value.get()); | 266 toTracedValue(value.get()); |
| 277 value->endArray(); | 267 value->endArray(); |
| 278 fprintf(stderr, "%s\n", value->asTraceFormat().ascii().data()); | 268 fprintf(stderr, "%s\n", value->asTraceFormat().ascii().data()); |
| 279 } | 269 } |
| 280 #endif // NDEBUG | 270 #endif // NDEBUG |
| 281 | 271 |
| 282 } // namespace blink | 272 } // namespace blink |
| OLD | NEW |