Index: Source/core/css/invalidation/DescendantInvalidationSet.h |
diff --git a/Source/core/css/invalidation/DescendantInvalidationSet.h b/Source/core/css/invalidation/DescendantInvalidationSet.h |
index 507d58fec0ccda9d635f4a0367c3707304469caf..48b3cc7a5fc1f54d25d920b72239b38b8a31a3bd 100644 |
--- a/Source/core/css/invalidation/DescendantInvalidationSet.h |
+++ b/Source/core/css/invalidation/DescendantInvalidationSet.h |
@@ -78,6 +78,9 @@ public: |
void setCustomPseudoInvalid() { m_customPseudoInvalid = true; } |
bool customPseudoInvalid() const { return m_customPseudoInvalid; } |
+ unsigned maxDirectAdjacentSelectors() const { return m_maxDirectAdjacentSelectors; } |
+ void setMaxDirectAdjacentSelectors(unsigned value) { m_maxDirectAdjacentSelectors = std::max(value, m_maxDirectAdjacentSelectors); } |
+ |
bool isEmpty() const { return !m_classes && !m_ids && !m_tagNames && !m_attributes && !m_customPseudoInvalid; } |
DECLARE_TRACE(); |
@@ -102,6 +105,8 @@ private: |
OwnPtrWillBeMember<WillBeHeapHashSet<AtomicString>> m_tagNames; |
OwnPtrWillBeMember<WillBeHeapHashSet<AtomicString>> m_attributes; |
+ unsigned m_maxDirectAdjacentSelectors; |
+ |
// If true, all descendants might be invalidated, so a full subtree recalc is required. |
unsigned m_allDescendantsMightBeInvalid : 1; |
@@ -113,6 +118,8 @@ private: |
// If true, insertion point descendants must be invalidated. |
unsigned m_insertionPointCrossing : 1; |
+ |
+ friend class RuleFeatureSetTest; |
}; |
} // namespace blink |