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

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

Issue 1523843004: Add support for new CSS ::slotted() pseudo element (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase / fix comments for tests (FYI) Created 4 years, 11 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 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 const WillBeHeapVector<RuleData>* cuePseudoRules() const { ASSERT(!m_pending Rules); return &m_cuePseudoRules; } 139 const WillBeHeapVector<RuleData>* cuePseudoRules() const { ASSERT(!m_pending Rules); return &m_cuePseudoRules; }
140 const WillBeHeapVector<RuleData>* focusPseudoClassRules() const { ASSERT(!m_ pendingRules); return &m_focusPseudoClassRules; } 140 const WillBeHeapVector<RuleData>* focusPseudoClassRules() const { ASSERT(!m_ pendingRules); return &m_focusPseudoClassRules; }
141 const WillBeHeapVector<RuleData>* universalRules() const { ASSERT(!m_pending Rules); return &m_universalRules; } 141 const WillBeHeapVector<RuleData>* universalRules() const { ASSERT(!m_pending Rules); return &m_universalRules; }
142 const WillBeHeapVector<RuleData>* shadowHostRules() const { ASSERT(!m_pendin gRules); return &m_shadowHostRules; } 142 const WillBeHeapVector<RuleData>* shadowHostRules() const { ASSERT(!m_pendin gRules); return &m_shadowHostRules; }
143 const WillBeHeapVector<RawPtrWillBeMember<StyleRulePage>>& pageRules() const { ASSERT(!m_pendingRules); return m_pageRules; } 143 const WillBeHeapVector<RawPtrWillBeMember<StyleRulePage>>& pageRules() const { ASSERT(!m_pendingRules); return m_pageRules; }
144 const WillBeHeapVector<RawPtrWillBeMember<StyleRuleViewport>>& viewportRules () const { ASSERT(!m_pendingRules); return m_viewportRules; } 144 const WillBeHeapVector<RawPtrWillBeMember<StyleRuleViewport>>& viewportRules () const { ASSERT(!m_pendingRules); return m_viewportRules; }
145 const WillBeHeapVector<RawPtrWillBeMember<StyleRuleFontFace>>& fontFaceRules () const { return m_fontFaceRules; } 145 const WillBeHeapVector<RawPtrWillBeMember<StyleRuleFontFace>>& fontFaceRules () const { return m_fontFaceRules; }
146 const WillBeHeapVector<RawPtrWillBeMember<StyleRuleKeyframes>>& keyframesRul es() const { return m_keyframesRules; } 146 const WillBeHeapVector<RawPtrWillBeMember<StyleRuleKeyframes>>& keyframesRul es() const { return m_keyframesRules; }
147 const WillBeHeapVector<MinimalRuleData>& deepCombinatorOrShadowPseudoRules() const { return m_deepCombinatorOrShadowPseudoRules; } 147 const WillBeHeapVector<MinimalRuleData>& deepCombinatorOrShadowPseudoRules() const { return m_deepCombinatorOrShadowPseudoRules; }
148 const WillBeHeapVector<MinimalRuleData>& shadowDistributedRules() const { re turn m_shadowDistributedRules; } 148 const WillBeHeapVector<MinimalRuleData>& shadowDistributedRules() const { re turn m_shadowDistributedRules; }
149 const WillBeHeapVector<MinimalRuleData>& shadowSlottedRules() const { return m_shadowSlottedRules; }
149 const MediaQueryResultList& viewportDependentMediaQueryResults() const { ret urn m_viewportDependentMediaQueryResults; } 150 const MediaQueryResultList& viewportDependentMediaQueryResults() const { ret urn m_viewportDependentMediaQueryResults; }
150 151
151 unsigned ruleCount() const { return m_ruleCount; } 152 unsigned ruleCount() const { return m_ruleCount; }
152 153
153 void compactRulesIfNeeded() 154 void compactRulesIfNeeded()
154 { 155 {
155 if (!m_pendingRules) 156 if (!m_pendingRules)
156 return; 157 return;
157 compactRules(); 158 compactRules();
158 } 159 }
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 WillBeHeapVector<RuleData> m_cuePseudoRules; 215 WillBeHeapVector<RuleData> m_cuePseudoRules;
215 WillBeHeapVector<RuleData> m_focusPseudoClassRules; 216 WillBeHeapVector<RuleData> m_focusPseudoClassRules;
216 WillBeHeapVector<RuleData> m_universalRules; 217 WillBeHeapVector<RuleData> m_universalRules;
217 WillBeHeapVector<RuleData> m_shadowHostRules; 218 WillBeHeapVector<RuleData> m_shadowHostRules;
218 RuleFeatureSet m_features; 219 RuleFeatureSet m_features;
219 WillBeHeapVector<RawPtrWillBeMember<StyleRulePage>> m_pageRules; 220 WillBeHeapVector<RawPtrWillBeMember<StyleRulePage>> m_pageRules;
220 WillBeHeapVector<RawPtrWillBeMember<StyleRuleViewport>> m_viewportRules; 221 WillBeHeapVector<RawPtrWillBeMember<StyleRuleViewport>> m_viewportRules;
221 WillBeHeapVector<RawPtrWillBeMember<StyleRuleFontFace>> m_fontFaceRules; 222 WillBeHeapVector<RawPtrWillBeMember<StyleRuleFontFace>> m_fontFaceRules;
222 WillBeHeapVector<RawPtrWillBeMember<StyleRuleKeyframes>> m_keyframesRules; 223 WillBeHeapVector<RawPtrWillBeMember<StyleRuleKeyframes>> m_keyframesRules;
223 WillBeHeapVector<MinimalRuleData> m_deepCombinatorOrShadowPseudoRules; 224 WillBeHeapVector<MinimalRuleData> m_deepCombinatorOrShadowPseudoRules;
224 // TODO(kochi): "shadowDistributed" means the selector has ::content pseudo element.
225 // Once ::slotted is introduced, come up with more readable name.
226 WillBeHeapVector<MinimalRuleData> m_shadowDistributedRules; 225 WillBeHeapVector<MinimalRuleData> m_shadowDistributedRules;
226 WillBeHeapVector<MinimalRuleData> m_shadowSlottedRules;
227 227
228 MediaQueryResultList m_viewportDependentMediaQueryResults; 228 MediaQueryResultList m_viewportDependentMediaQueryResults;
229 229
230 unsigned m_ruleCount; 230 unsigned m_ruleCount;
231 OwnPtrWillBeMember<PendingRuleMaps> m_pendingRules; 231 OwnPtrWillBeMember<PendingRuleMaps> m_pendingRules;
232 232
233 #ifndef NDEBUG 233 #ifndef NDEBUG
234 WillBeHeapVector<RuleData> m_allRules; 234 WillBeHeapVector<RuleData> m_allRules;
235 #endif 235 #endif
236 }; 236 };
237 237
238 } // namespace blink 238 } // namespace blink
239 239
240 WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS(blink::RuleData); 240 WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS(blink::RuleData);
241 WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS(blink::MinimalRuleData); 241 WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS(blink::MinimalRuleData);
242 242
243 #endif // RuleSet_h 243 #endif // RuleSet_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/css/RuleFeature.cpp ('k') | third_party/WebKit/Source/core/css/RuleSet.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698