| 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.
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 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 68 } | 68 } |
| 69 | 69 |
| 70 private: | 70 private: |
| 71 // FIXME: Oilpan: RuleData is in the oilpan heap and this pointer | 71 // FIXME: Oilpan: RuleData is in the oilpan heap and this pointer |
| 72 // really should be traced. However, RuleData objects are | 72 // really should be traced. However, RuleData objects are |
| 73 // allocated inside larger TerminatedArray objects and we cannot | 73 // allocated inside larger TerminatedArray objects and we cannot |
| 74 // trace a raw rule data pointer at this point. | 74 // trace a raw rule data pointer at this point. |
| 75 const RuleData* m_ruleData; | 75 const RuleData* m_ruleData; |
| 76 unsigned m_specificity; | 76 unsigned m_specificity; |
| 77 uint64_t m_position; | 77 uint64_t m_position; |
| 78 RawPtrWillBeMember<const CSSStyleSheet> m_parentStyleSheet; | 78 Member<const CSSStyleSheet> m_parentStyleSheet; |
| 79 }; | 79 }; |
| 80 | 80 |
| 81 } // namespace blink | 81 } // namespace blink |
| 82 | 82 |
| 83 WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS(blink::MatchedRule); | 83 WTF_ALLOW_MOVE_AND_INIT_WITH_MEM_FUNCTIONS(blink::MatchedRule); |
| 84 | 84 |
| 85 namespace blink { | 85 namespace blink { |
| 86 | 86 |
| 87 #if ENABLE(OILPAN) | 87 #if ENABLE(OILPAN) |
| 88 using StyleRuleList = HeapVector<Member<StyleRule>>; | 88 using StyleRuleList = HeapVector<Member<StyleRule>>; |
| (...skipping 22 matching lines...) Expand all Loading... |
| 111 ~ElementRuleCollector(); | 111 ~ElementRuleCollector(); |
| 112 | 112 |
| 113 void setMode(SelectorChecker::Mode mode) { m_mode = mode; } | 113 void setMode(SelectorChecker::Mode mode) { m_mode = mode; } |
| 114 void setPseudoStyleRequest(const PseudoStyleRequest& request) { m_pseudoStyl
eRequest = request; } | 114 void setPseudoStyleRequest(const PseudoStyleRequest& request) { m_pseudoStyl
eRequest = request; } |
| 115 void setSameOriginOnly(bool f) { m_sameOriginOnly = f; } | 115 void setSameOriginOnly(bool f) { m_sameOriginOnly = f; } |
| 116 | 116 |
| 117 void setMatchingUARules(bool matchingUARules) { m_matchingUARules = matching
UARules; } | 117 void setMatchingUARules(bool matchingUARules) { m_matchingUARules = matching
UARules; } |
| 118 bool hasAnyMatchingRules(RuleSet*); | 118 bool hasAnyMatchingRules(RuleSet*); |
| 119 | 119 |
| 120 const MatchResult& matchedResult() const; | 120 const MatchResult& matchedResult() const; |
| 121 PassRefPtrWillBeRawPtr<StyleRuleList> matchedStyleRuleList(); | 121 RawPtr<StyleRuleList> matchedStyleRuleList(); |
| 122 PassRefPtrWillBeRawPtr<CSSRuleList> matchedCSSRuleList(); | 122 RawPtr<CSSRuleList> matchedCSSRuleList(); |
| 123 | 123 |
| 124 void collectMatchingRules(const MatchRequest&, CascadeOrder = ignoreCascadeO
rder, bool matchingTreeBoundaryRules = false); | 124 void collectMatchingRules(const MatchRequest&, CascadeOrder = ignoreCascadeO
rder, bool matchingTreeBoundaryRules = false); |
| 125 void collectMatchingShadowHostRules(const MatchRequest&, CascadeOrder = igno
reCascadeOrder); | 125 void collectMatchingShadowHostRules(const MatchRequest&, CascadeOrder = igno
reCascadeOrder); |
| 126 void sortAndTransferMatchedRules(); | 126 void sortAndTransferMatchedRules(); |
| 127 void clearMatchedRules(); | 127 void clearMatchedRules(); |
| 128 void addElementStyleProperties(const StylePropertySet*, bool isCacheable = t
rue); | 128 void addElementStyleProperties(const StylePropertySet*, bool isCacheable = t
rue); |
| 129 void finishAddingUARules() { m_result.finishAddingUARules(); } | 129 void finishAddingUARules() { m_result.finishAddingUARules(); } |
| 130 void finishAddingAuthorRulesForTreeScope() { m_result.finishAddingAuthorRule
sForTreeScope(); } | 130 void finishAddingAuthorRulesForTreeScope() { m_result.finishAddingAuthorRule
sForTreeScope(); } |
| 131 void setIncludeEmptyRules(bool include) { m_includeEmptyRules = include; } | 131 void setIncludeEmptyRules(bool include) { m_includeEmptyRules = include; } |
| 132 bool includeEmptyRules() const { return m_includeEmptyRules; } | 132 bool includeEmptyRules() const { return m_includeEmptyRules; } |
| (...skipping 19 matching lines...) Expand all Loading... |
| 152 const SelectorFilter& m_selectorFilter; | 152 const SelectorFilter& m_selectorFilter; |
| 153 RefPtr<ComputedStyle> m_style; // FIXME: This can be mutated during matching
! | 153 RefPtr<ComputedStyle> m_style; // FIXME: This can be mutated during matching
! |
| 154 | 154 |
| 155 PseudoStyleRequest m_pseudoStyleRequest; | 155 PseudoStyleRequest m_pseudoStyleRequest; |
| 156 SelectorChecker::Mode m_mode; | 156 SelectorChecker::Mode m_mode; |
| 157 bool m_canUseFastReject; | 157 bool m_canUseFastReject; |
| 158 bool m_sameOriginOnly; | 158 bool m_sameOriginOnly; |
| 159 bool m_matchingUARules; | 159 bool m_matchingUARules; |
| 160 bool m_includeEmptyRules; | 160 bool m_includeEmptyRules; |
| 161 | 161 |
| 162 WillBeHeapVector<MatchedRule, 32> m_matchedRules; | 162 HeapVector<MatchedRule, 32> m_matchedRules; |
| 163 | 163 |
| 164 // Output. | 164 // Output. |
| 165 RefPtrWillBeMember<StaticCSSRuleList> m_cssRuleList; | 165 Member<StaticCSSRuleList> m_cssRuleList; |
| 166 RefPtrWillBeMember<StyleRuleList> m_styleRuleList; | 166 Member<StyleRuleList> m_styleRuleList; |
| 167 MatchResult m_result; | 167 MatchResult m_result; |
| 168 }; | 168 }; |
| 169 | 169 |
| 170 } // namespace blink | 170 } // namespace blink |
| 171 | 171 |
| 172 #endif // ElementRuleCollector_h | 172 #endif // ElementRuleCollector_h |
| OLD | NEW |