<feed xmlns='http://www.w3.org/2005/Atom'>
<title>html5tokenizer/src/tokenizer/machine, branch main</title>
<subtitle>Fork of html5gum with code span support</subtitle>
<id>http://git.push-f.com/html5tokenizer/atom/src/tokenizer/machine?h=main</id>
<link rel='self' href='http://git.push-f.com/html5tokenizer/atom/src/tokenizer/machine?h=main'/>
<link rel='alternate' type='text/html' href='http://git.push-f.com/html5tokenizer/'/>
<updated>2023-09-28T08:36:08Z</updated>
<entry>
<title>chore: rename internal states as well</title>
<updated>2023-09-28T08:36:08Z</updated>
<author>
<name>Martin Fischer</name>
<email>martin@push-f.com</email>
</author>
<published>2023-09-04T18:47:52Z</published>
<link rel='alternate' type='text/html' href='http://git.push-f.com/html5tokenizer/commit/?id=bd446b6123e0b077a48e9f1e836affac78822f44'/>
<id>urn:sha1:bd446b6123e0b077a48e9f1e836affac78822f44</id>
<content type='text'>
See the previous commit.
</content>
</entry>
<entry>
<title>feat: add span to Trace::Char</title>
<updated>2023-09-28T08:36:08Z</updated>
<author>
<name>Martin Fischer</name>
<email>martin@push-f.com</email>
</author>
<published>2023-09-15T07:40:55Z</published>
<link rel='alternate' type='text/html' href='http://git.push-f.com/html5tokenizer/commit/?id=d46de6ab592e57a31fef13cfc015c4ce818e8f47'/>
<id>urn:sha1:d46de6ab592e57a31fef13cfc015c4ce818e8f47</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add offset to Trace::EndOfFile</title>
<updated>2023-09-28T08:36:08Z</updated>
<author>
<name>Martin Fischer</name>
<email>martin@push-f.com</email>
</author>
<published>2023-09-15T06:15:29Z</published>
<link rel='alternate' type='text/html' href='http://git.push-f.com/html5tokenizer/commit/?id=e0434737b20b32a8d7238a134c3662fa9075eb6d'/>
<id>urn:sha1:e0434737b20b32a8d7238a134c3662fa9075eb6d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>break!: emit chars instead of strings</title>
<updated>2023-09-28T08:36:08Z</updated>
<author>
<name>Martin Fischer</name>
<email>martin@push-f.com</email>
</author>
<published>2023-08-29T05:24:55Z</published>
<link rel='alternate' type='text/html' href='http://git.push-f.com/html5tokenizer/commit/?id=df5a2ae14c4976d404195e83e52b8db62be63988'/>
<id>urn:sha1:df5a2ae14c4976d404195e83e52b8db62be63988</id>
<content type='text'>
The HTML spec specifies that the tokenizer emits character tokens.
That html5gum always emitted strings instead was probably just done
to make the token consumption more convenient. When it comes to tree
construction character tokens are however actually more convenient
than string tokens since the spec defines that specific character
tokens should be ignored in specific states (and character tokens
let us avoid string manipulation for these conditions).

This should also make the DefaultEmitter more performant for cases
where you don't actually need the strings at all (or only a few)
since it avoids string allocations. Though I haven't benchmarked it.
</content>
</entry>
<entry>
<title>refactor: proxy emit_string calls through utils</title>
<updated>2023-09-28T08:36:08Z</updated>
<author>
<name>Martin Fischer</name>
<email>martin@push-f.com</email>
</author>
<published>2023-09-09T20:15:54Z</published>
<link rel='alternate' type='text/html' href='http://git.push-f.com/html5tokenizer/commit/?id=394c52260e861e911e2d8706d4904136a920da87'/>
<id>urn:sha1:394c52260e861e911e2d8706d4904136a920da87</id>
<content type='text'>
This is done separately so that the next commit has a cleaner diff.
</content>
</entry>
<entry>
<title>refactor: move machine impl details to machine module</title>
<updated>2023-09-28T08:36:08Z</updated>
<author>
<name>Martin Fischer</name>
<email>martin@push-f.com</email>
</author>
<published>2023-09-09T19:53:22Z</published>
<link rel='alternate' type='text/html' href='http://git.push-f.com/html5tokenizer/commit/?id=5aa3b82fbe62882da8007b0a4548b979c845aa97'/>
<id>urn:sha1:5aa3b82fbe62882da8007b0a4548b979c845aa97</id>
<content type='text'>
This commit separates the public API (the "Tokenizer")
from the internal implementation (the "Machine")
to make the code more readable.
</content>
</entry>
<entry>
<title>refactor: move utils module under tokenizer::machine</title>
<updated>2023-09-28T08:36:08Z</updated>
<author>
<name>Martin Fischer</name>
<email>martin@push-f.com</email>
</author>
<published>2023-09-09T19:42:17Z</published>
<link rel='alternate' type='text/html' href='http://git.push-f.com/html5tokenizer/commit/?id=2c73901944e2d22747a2a4ebcc11881b3f8c2ad3'/>
<id>urn:sha1:2c73901944e2d22747a2a4ebcc11881b3f8c2ad3</id>
<content type='text'>
</content>
</entry>
</feed>
