### org.jfree.layouting.layouter.style.resolver

# Interface StyleRuleMatcher

Known Implementing Classes:
  SimpleStyleRuleMatcher

`public interface StyleRuleMatcher`

A (possibly statefull) style matcher. This class is responsible for checking which style rule applies to the given document. It is guaranteed, that the matcher receives the elements in the order in which they appear in the document. Although the style rule matcher does not receive explicit element-opened and element-closed events, these events can be derived from the layout element and its relation to the parent (and possibly previously received element and its parent).

Author:
  Thomas Morgner

  ## Method Summary

  `StyleRuleMatcher`

  `deriveInstance()`
    Creates an independent copy of this style rule matcher.

  `CSSStyleRule[]`

  `getMatchingRules(LayoutElement element)`

  `CSSPageRule[]`

  `getPageRule(CSSValue pageName, PseudoPage[] pseudoPages)`

  `void`

  `initialize(LayoutProcess layoutProcess)`

  `boolean`

  `isMatchingPseudoElement(LayoutElement element, String pseudo)`

## Method Details

### deriveInstance

    public StyleRuleMatcher deriveInstance()

> Creates an independent copy of this style rule matcher.
> Returns:

### getMatchingRules

    public CSSStyleRule[] getMatchingRules(LayoutElement element)

### getPageRule

    public CSSPageRule[] getPageRule(CSSValue pageName,
                                     PseudoPage[] pseudoPages)

### initialize

    public void initialize(LayoutProcess layoutProcess)

### isMatchingPseudoElement

    public boolean isMatchingPseudoElement(LayoutElement element,
                                           String pseudo)