void StyleInvalidator::scheduleSiblingInvalidationsAsDescendants(const InvalidationLists& invalidationLists, ContainerNode& schedulingParent)
{
    if (invalidationLists.siblings.isEmpty())
        return;

    PendingInvalidations& pendingInvalidations = ensurePendingInvalidations(schedulingParent);

    for (auto& invalidationSet : invalidationLists.siblings) {
        if (invalidationSet->invalidatesSelf() && !pendingInvalidations.descendants().contains(invalidationSet))
            pendingInvalidations.descendants().append(invalidationSet);

        if (DescendantInvalidationSet* descendants = toSiblingInvalidationSet(*invalidationSet).siblingDescendants()) {
            if (!pendingInvalidations.descendants().contains(descendants))
                pendingInvalidations.descendants().append(descendants);
        }
    }
    schedulingParent.setNeedsStyleInvalidation();
}