Package com.saxonica.ee.stream.adjunct

## Class FilteringAdjunct

- java.lang.Object
- - com.saxonica.ee.stream.adjunct.StreamingAdjunct
  - - com.saxonica.ee.stream.adjunct.TransmissionAdjunct
    - - com.saxonica.ee.stream.adjunct.FilteringAdjunct

- All Implemented Interfaces:
    `FeedMaker`
  Direct Known Subclasses:
    `FilterExpressionAdjunct`, `FilterFnStreamer`, `FirstItemExpressionAdjunct`, `OutermostStreamer`, `RemoveStreamer`, `SubscriptExpressionAdjunct`, `SubsequenceStreamer`, `TailExpressionAdjunct`

      public abstract class FilteringAdjunct
      extends TransmissionAdjunct
      implements FeedMaker

  A subclass of StreamingAdjunct used for expressions that have a sequence-valued operand with usage transmission. Such expressions may appear as a filter for striding or crawling nodes, in which case they need to filter (or in some cases augment) the event stream rather than operating at the level of composed items.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `FilteringAdjunct()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract FilteringFeed.Filter` | `makeFilter​(XPathContext context, ItemFeed out)` | Make a filter for the event stream
    `ItemFeed` | `makeItemFeed​(WatchManager watchManager, ItemFeed out, XPathContext context)` |

    - ### Methods inherited from class com.saxonica.ee.stream.adjunct.TransmissionAdjunct

      `getWatchMaker, makeTransmissionFlow`

    - ### Methods inherited from class com.saxonica.ee.stream.adjunct.StreamingAdjunct

      `computeStreamability, findConsumingArg, getConfiguration, getDefaultFeedMaker, getExpression, getFeedMaker, makeStreamingAdjunct, setConfiguration, setExpression, toStreamingPattern`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### FilteringAdjunct

          public FilteringAdjunct()

  - ### Method Detail

    - #### makeFilter

          public abstract FilteringFeed.Filter makeFilter​(XPathContext context,
                                                          ItemFeed out)
                                                   throws XPathException

      Make a filter for the event stream
      Parameters:
        `context` - the XPath dyamic context
        `out` - the destination for the filtered events
      Returns:
        a filter that can be added to the event stream
      Throws:
        `XPathException` - if a dynamic evaluation error occurs

    - #### makeItemFeed

          public ItemFeed makeItemFeed​(WatchManager watchManager,
                                       ItemFeed out,
                                       XPathContext context)
                                throws XPathException

      Specified by:
        `makeItemFeed` in interface `FeedMaker`
      Throws:
        `XPathException`