From ee379d29a15560ba9b44d2fd3629f81d217f7d31 Mon Sep 17 00:00:00 2001 From: Technosophos Date: Wed, 10 Apr 2013 11:50:32 -0500 Subject: Added main parsing loop. --- src/HTML5/Parser/Tokenizer.php | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/HTML5/Parser/Tokenizer.php b/src/HTML5/Parser/Tokenizer.php index 1501ab1..1c5aa18 100644 --- a/src/HTML5/Parser/Tokenizer.php +++ b/src/HTML5/Parser/Tokenizer.php @@ -16,19 +16,31 @@ class Tokenizer { $this->events = $eventHandler; } + /** + * Main entry point. + */ + public function parse() { + while ($this->consumeData()) { + $this->scanner->next(); + } + } + /** * 8.2.4.1 */ - public function consumeData() { - // Scan a token - $this->scanner->next(); + protected function consumeData() { // Character Ref $this->characterReference(); // TagOpen // Null // EOF + if ($this->scanner->current() === FALSE) { + $this->events->eof(); + return FALSE; + } // Character + return TRUE; } /** -- cgit v1.2.3