Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(38)

Side by Side Diff: third_party/WebKit/Source/core/css/RuleFeature.h

Issue 2116503002: Skip scheduling sibling invalidation based on direct adjacent count. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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. All rights reserved. 3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
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 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 } 91 }
92 92
93 bool hasSelectorForId(const AtomicString& idValue) const { return m_idInvali dationSets.contains(idValue); } 93 bool hasSelectorForId(const AtomicString& idValue) const { return m_idInvali dationSets.contains(idValue); }
94 94
95 // Collect descendant and sibling invalidation sets. 95 // Collect descendant and sibling invalidation sets.
96 void collectInvalidationSetsForClass(InvalidationLists&, Element&, const Ato micString& className) const; 96 void collectInvalidationSetsForClass(InvalidationLists&, Element&, const Ato micString& className) const;
97 void collectInvalidationSetsForId(InvalidationLists&, Element&, const Atomic String& id) const; 97 void collectInvalidationSetsForId(InvalidationLists&, Element&, const Atomic String& id) const;
98 void collectInvalidationSetsForAttribute(InvalidationLists&, Element&, const QualifiedName& attributeName) const; 98 void collectInvalidationSetsForAttribute(InvalidationLists&, Element&, const QualifiedName& attributeName) const;
99 void collectInvalidationSetsForPseudoClass(InvalidationLists&, Element&, CSS Selector::PseudoType) const; 99 void collectInvalidationSetsForPseudoClass(InvalidationLists&, Element&, CSS Selector::PseudoType) const;
100 100
101 void collectSiblingInvalidationSetForClass(InvalidationLists&, Element&, con st AtomicString& className) const; 101 void collectSiblingInvalidationSetForClass(InvalidationLists&, Element&, con st AtomicString& className, unsigned minDirectAdjacent) const;
102 void collectSiblingInvalidationSetForId(InvalidationLists&, Element&, const AtomicString& id) const; 102 void collectSiblingInvalidationSetForId(InvalidationLists&, Element&, const AtomicString& id, unsigned minDirectAdjacent) const;
103 void collectSiblingInvalidationSetForAttribute(InvalidationLists&, Element&, const QualifiedName& attributeName) const; 103 void collectSiblingInvalidationSetForAttribute(InvalidationLists&, Element&, const QualifiedName& attributeName, unsigned minDirectAdjacent) const;
104 void collectUniversalSiblingInvalidationSet(InvalidationLists&) const; 104 void collectUniversalSiblingInvalidationSet(InvalidationLists&, unsigned min DirectAdjacent) const;
105 105
106 bool hasIdsInSelectors() const 106 bool hasIdsInSelectors() const
107 { 107 {
108 return m_idInvalidationSets.size() > 0; 108 return m_idInvalidationSets.size() > 0;
109 } 109 }
110 110
111 DECLARE_TRACE(); 111 DECLARE_TRACE();
112 112
113 HeapVector<RuleFeature> siblingRules; 113 HeapVector<RuleFeature> siblingRules;
114 HeapVector<RuleFeature> uncommonAttributeRules; 114 HeapVector<RuleFeature> uncommonAttributeRules;
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 InvalidationSetMap m_idInvalidationSets; 182 InvalidationSetMap m_idInvalidationSets;
183 PseudoTypeInvalidationSetMap m_pseudoInvalidationSets; 183 PseudoTypeInvalidationSetMap m_pseudoInvalidationSets;
184 RefPtr<SiblingInvalidationSet> m_universalSiblingInvalidationSet; 184 RefPtr<SiblingInvalidationSet> m_universalSiblingInvalidationSet;
185 185
186 friend class RuleFeatureSetTest; 186 friend class RuleFeatureSetTest;
187 }; 187 };
188 188
189 } // namespace blink 189 } // namespace blink
190 190
191 #endif // RuleFeature_h 191 #endif // RuleFeature_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698