blob: 83ff6bb4c13ffdb1d2d94a6a728a84ced602075b [file] [log] [blame]
Brian Silverman70325d62015-09-20 17:00:43 -04001This directory contains an implementation of an html context scanner with no
2lookahead. Its purpose is to scan an html stream and provide context
3information at any point within the input stream. This is used in the
4auto escaping functionality of the templating system, which would require
5html context information at very specific points within the html stream. The
6implementation is based on a simplified state machine of HTML4.1.
7
8The implementation is written in C, with the idea of making is usable
9in other contexts besides this html paresr; however, we compile all
10the files as c++ files in order to be able to use a namespace (and
11avoid global namespace pollution). There's also a c++ shim to give an
12object-oriented look at the html parser state, which is what the
13ctemplate system actually uses.