<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Pattern matcher should support delegation"
   href="https://bugs.webkit.org/show_bug.cgi?id=150559">150559</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Pattern matcher should support delegation
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>WebKit Nightly Build
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>JavaScriptCore
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned&#64;lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>fpizlo&#64;apple.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Currently, if you write two pattern matchers and you implement one by sometimes using the other as a helper, then the helper will return the first match that works for it regardless of what the outer matcher wants.  For example, the outer matcher might want any address except for Index, and so it might want to use the address matcher but somehow tell it &quot;please skip anything that produces Index&quot;.  But this is currently hard.  You'd have to manually set some state on the address matcher that tells it what kinds of things to filter out, and write code in the address matcher that applies the filter.  It would be better if this was easier to do.  For example, when you runAddressMatcher, you could provide a functor that filters the results of the address matcher.  This could be made even better if matchers returned a value rather than void.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>