void PageRuleCollector::matchAllPageRules(int pageIndex)
{
    const bool isLeft = isLeftPage(pageIndex);
    const bool isFirst = isFirstPage(pageIndex);
    const String page = pageName(pageIndex);
    
    matchPageRules(CSSDefaultStyleSheets::defaultPrintStyle, isLeft, isFirst, page);
    matchPageRules(m_ruleSets.userStyle(), isLeft, isFirst, page);
    // Only consider the global author RuleSet for @page rules, as per the HTML5 spec.
    matchPageRules(m_ruleSets.authorStyle(), isLeft, isFirst, page);
}
PageRuleCollector::PageRuleCollector(const RenderStyle* rootElementStyle, int pageIndex)
    : m_isLeftPage(isLeftPage(rootElementStyle, pageIndex))
    , m_isFirstPage(isFirstPage(pageIndex))
    , m_pageName(pageName(pageIndex)) { }
PageRuleCollector::PageRuleCollector(const StyleResolverState& state, int pageIndex)
    : m_state(state)
    , m_isLeftPage(isLeftPage(pageIndex))
    , m_isFirstPage(isFirstPage(pageIndex))
    , m_pageName(pageName(pageIndex)) { }