path: root/src/lex
Commit message (Collapse)AuthorAgeFilesLines
* Retain pointer to dictionary entries so we don't have to rediscover it later.John Mark Bell2008-12-012-4/+6
| | | | svn path=/trunk/libcss/; revision=5862
* Simplify decision as to whether to intern token data by inserting markers ↵John Mark Bell2008-12-011-7/+16
| | | | | | into the css_token_type enum. svn path=/trunk/libcss/; revision=5860
* css_string is now the same as a parserutils_dict_entry. This allows us to ↵John Mark Bell2008-11-271-31/+31
| | | | | | | | | | use dict entries directly as strings. iChange the way in which selectors are represented. This significantly reduces memory requirements -- reducing the approximate usage count (excludes the string dictionary, which is about 360k) of allzengarden.css from 4,535,400 bytes to 2,414,312 bytes on a 64bit platform. The string dictionary is now created and owned by the stylesheet object. The parser is just given access to this so that it can store strings in it. svn path=/trunk/libcss/; revision=5809
* Prevent reading from beyond the start of token data.John Mark Bell2008-11-271-5/+6
| | | | svn path=/trunk/libcss/; revision=5807
* Port libcss to new lpu API.John Mark Bell2008-11-092-16/+25
| | | | | | Make lexer, core parser, and css21 parser constructors&destructors return errors svn path=/trunk/libcss/; revision=5674
* Support signs on numbers, percentages, and dimensionsJohn Mark Bell2008-10-271-12/+30
| | | | svn path=/trunk/libcss/; revision=5648
* For tokens where there's a possibility of case differences requiring case ↵John Mark Bell2008-08-042-0/+4
| | | | | | insensitive matching, intern lower cased versions of strings alongside the originals. svn path=/trunk/libcss/; revision=4902
* Stub out at-rule handlingJohn Mark Bell2008-08-041-0/+1
| | | | svn path=/trunk/libcss/; revision=4899
* Only intern strings when we get a token from the lexer. Strings in tokens ↵John Mark Bell2008-08-012-35/+42
| | | | | | that have been pushed back have already been interned, so it's stupid to re-intern every time. This has required that the lexer permits its clients to modify the data members of the css_token object. That's fine, as it assumes nothing about them (they're basically just a window onto the internal lexer state, anyway). svn path=/trunk/libcss/; revision=4857
* Correctly process unterminated strings.John Mark Bell2008-06-262-26/+37
| | | | svn path=/trunk/libcss/; revision=4455
* Pedantic linewrappingJohn Mark Bell2008-05-201-2/+8
| | | | | | Flag todo relating to handling of unexpected end of string svn path=/trunk/libcss/; revision=4185
* Fix testdriver to accept # in inputJohn Mark Bell2008-05-031-2/+4
| | | | | | | Significantly more tests for the lexer -- this basically covers all the non-OOD/EOF cases Fix bug in lexing of "/x" -- the CHAR(/) was getting dropped by the "don't emit comment tokens" logic svn path=/trunk/libcss/; revision=4120
* Add spaceJohn Mark Bell2008-05-011-1/+1
| | | | svn path=/trunk/libcss/; revision=4114
* Import beginnings of a CSS parsing library.John Mark Bell2008-05-013-0/+2232
Currently comprises a lexer. svn path=/trunk/libcss/; revision=4112