Package org.apache.tomcat.util.digester

## Interface Rules

- All Known Implementing Classes:
    `RulesBase`

      public interface Rules

  Public interface defining a collection of Rule instances (and corresponding matching patterns) plus an implementation of a matching policy that selects the rules that match a particular pattern of nested elements discovered during parsing.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `add​(String pattern, Rule rule)` | Register a new Rule instance matching the specified pattern.
    `void` | `clear()` | Clear all existing Rule instance registrations.
    `Digester` | `getDigester()` |
    `List<Rule>` | `match​(String namespaceURI, String pattern)` | Return a List of all registered Rule instances that match the specified nesting pattern, or a zero-length List if there are no matches.
    `List<Rule>` | `rules()` | Return a List of all registered Rule instances, or a zero-length List if there are no registered Rule instances.
    `void` | `setDigester​(Digester digester)` | Set the Digester instance with which this Rules instance is associated.

- - ### Method Detail

    - #### getDigester

          Digester getDigester()

      Returns:
        the Digester instance with which this Rules instance is associated.

    - #### setDigester

          void setDigester​(Digester digester)

      Set the Digester instance with which this Rules instance is associated.
      Parameters:
        `digester` - The newly associated Digester instance

    - #### add

          void add​(String pattern,
                   Rule rule)

      Register a new Rule instance matching the specified pattern.
      Parameters:
        `pattern` - Nesting pattern to be matched for this Rule
        `rule` - Rule instance to be registered

    - #### clear

          void clear()

      Clear all existing Rule instance registrations.

    - #### match

          List<Rule> match​(String namespaceURI,
                           String pattern)

      Return a List of all registered Rule instances that match the specified nesting pattern, or a zero-length List if there are no matches. If more than one Rule instance matches, they must be returned in the order originally registered through the `add()` method.
      Parameters:
        `namespaceURI` - Namespace URI for which to select matching rules, or `null` to match regardless of namespace URI
        `pattern` - Nesting pattern to be matched
      Returns:
        a rules list

    - #### rules

          List<Rule> rules()

      Return a List of all registered Rule instances, or a zero-length List if there are no registered Rule instances. If more than one Rule instance has been registered, they must be returned in the order originally registered through the `add()` method.
      Returns:
        a rules list