matcher = $matcher; } protected function generateMatches( ComponentValueList $values, $start, array $options ) { foreach ( $this->matcher->generateMatches( $values, $start, $options ) as $match ) { if ( $match->getLength() !== 0 ) { yield $this->makeMatch( $values, $start, $match->getNext(), $match ); } } } }