OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. | 3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. |
4 * All rights reserved. | 4 * All rights reserved. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 DescendantInvalidationSet& ensureTypeRuleInvalidationSet(); | 205 DescendantInvalidationSet& ensureTypeRuleInvalidationSet(); |
206 | 206 |
207 void updateInvalidationSets(const RuleData&); | 207 void updateInvalidationSets(const RuleData&); |
208 void updateInvalidationSetsForContentAttribute(const RuleData&); | 208 void updateInvalidationSetsForContentAttribute(const RuleData&); |
209 | 209 |
210 struct InvalidationSetFeatures { | 210 struct InvalidationSetFeatures { |
211 DISALLOW_NEW(); | 211 DISALLOW_NEW(); |
212 | 212 |
213 void add(const InvalidationSetFeatures& other); | 213 void add(const InvalidationSetFeatures& other); |
214 bool hasFeatures() const; | 214 bool hasFeatures() const; |
215 bool hasTagIdClassOrAttribute() const; | 215 bool hasIdClassOrAttribute() const; |
216 | 216 |
217 Vector<AtomicString> classes; | 217 Vector<AtomicString> classes; |
218 Vector<AtomicString> attributes; | 218 Vector<AtomicString> attributes; |
219 Vector<AtomicString> ids; | 219 Vector<AtomicString> ids; |
220 Vector<AtomicString> tagNames; | 220 Vector<AtomicString> tagNames; |
221 unsigned maxDirectAdjacentSelectors = 0; | 221 unsigned maxDirectAdjacentSelectors = 0; |
222 bool customPseudoElement = false; | 222 bool customPseudoElement = false; |
223 bool hasBeforeOrAfter = false; | 223 bool hasBeforeOrAfter = false; |
224 bool treeBoundaryCrossing = false; | 224 bool treeBoundaryCrossing = false; |
225 bool insertionPointCrossing = false; | 225 bool insertionPointCrossing = false; |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
273 InvalidationSetFeatures* siblingFeatures, | 273 InvalidationSetFeatures* siblingFeatures, |
274 InvalidationSetFeatures& descendantFeatures); | 274 InvalidationSetFeatures& descendantFeatures); |
275 void addFeaturesToInvalidationSetsForSelectorList( | 275 void addFeaturesToInvalidationSetsForSelectorList( |
276 const CSSSelector&, | 276 const CSSSelector&, |
277 InvalidationSetFeatures* siblingFeatures, | 277 InvalidationSetFeatures* siblingFeatures, |
278 InvalidationSetFeatures& descendantFeatures); | 278 InvalidationSetFeatures& descendantFeatures); |
279 void addFeaturesToUniversalSiblingInvalidationSet( | 279 void addFeaturesToUniversalSiblingInvalidationSet( |
280 const InvalidationSetFeatures& siblingFeatures, | 280 const InvalidationSetFeatures& siblingFeatures, |
281 const InvalidationSetFeatures& descendantFeatures); | 281 const InvalidationSetFeatures& descendantFeatures); |
282 | 282 |
| 283 void updateRuleSetInvalidation(const InvalidationSetFeatures&); |
| 284 void addTagNamesToTypeRuleInvalidationSet(const Vector<AtomicString>&); |
| 285 |
283 FeatureMetadata m_metadata; | 286 FeatureMetadata m_metadata; |
284 InvalidationSetMap m_classInvalidationSets; | 287 InvalidationSetMap m_classInvalidationSets; |
285 InvalidationSetMap m_attributeInvalidationSets; | 288 InvalidationSetMap m_attributeInvalidationSets; |
286 InvalidationSetMap m_idInvalidationSets; | 289 InvalidationSetMap m_idInvalidationSets; |
287 PseudoTypeInvalidationSetMap m_pseudoInvalidationSets; | 290 PseudoTypeInvalidationSetMap m_pseudoInvalidationSets; |
288 RefPtr<SiblingInvalidationSet> m_universalSiblingInvalidationSet; | 291 RefPtr<SiblingInvalidationSet> m_universalSiblingInvalidationSet; |
289 RefPtr<DescendantInvalidationSet> m_nthInvalidationSet; | 292 RefPtr<DescendantInvalidationSet> m_nthInvalidationSet; |
290 RefPtr<DescendantInvalidationSet> m_typeRuleInvalidationSet; | 293 RefPtr<DescendantInvalidationSet> m_typeRuleInvalidationSet; |
291 HeapVector<RuleFeature> m_siblingRules; | 294 HeapVector<RuleFeature> m_siblingRules; |
292 HeapVector<RuleFeature> m_uncommonAttributeRules; | 295 HeapVector<RuleFeature> m_uncommonAttributeRules; |
293 MediaQueryResultList m_viewportDependentMediaQueryResults; | 296 MediaQueryResultList m_viewportDependentMediaQueryResults; |
294 MediaQueryResultList m_deviceDependentMediaQueryResults; | 297 MediaQueryResultList m_deviceDependentMediaQueryResults; |
295 | 298 |
296 friend class RuleFeatureSetTest; | 299 friend class RuleFeatureSetTest; |
297 }; | 300 }; |
298 | 301 |
299 } // namespace blink | 302 } // namespace blink |
300 | 303 |
301 #endif // RuleFeature_h | 304 #endif // RuleFeature_h |
OLD | NEW |