Function join

Source
pub fn join<P: Pattern>(
    pp: impl Pattern<Value = P>,
) -> impl Pattern<Value = P::Value>
Expand description

Joins a pattern of patterns into a single pattern.

  1. When queried, get the events from the outer pattern.
  2. Query the inner pattern using the active of the outer.
  3. For each inner event, set the whole and active to be the intersection of the outer whole and part respectively.
  4. Concatenate all the events together (discarding whole/parts that don’t intersect).