handler = new TokenGeneratorHandler;
$this->tokenizer = new Tokenizer( $this->handler, $text, $options );
}
/**
* Get a Generator which iterates over all tokens in the supplied HTML
*
* @param string $text The HTML
* @param array $options The Tokenizer options, see Tokenizer::__construct()
* @return \Generator
*/
public static function generate( $text, $options ) {
$tg = new self( $text, $options );
$tg->tokenizer->beginStepping();
while ( $tg->tokenizer->step() ) {
foreach ( $tg->handler->tokens as $token ) {
yield $token;
}
$tg->handler->tokens = [];
}
foreach ( $tg->handler->tokens as $token ) {
yield $token;
}
}
}