summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Style information for selector rulesets can be shared between the individual ↵John Mark Bell2008-10-201-2/+1
| | | | | | selectors in the ruleset. Therefore, hang it off the css_rule object, rather than having a separate copy for every selector in the ruleset. Selectors know which css_rule they belong to so can easily find the applicable style information. svn path=/trunk/libcss/; revision=5609
* Fix stupid.John Mark Bell2008-10-201-4/+8
| | | | svn path=/trunk/libcss/; revision=5606
* Squash warningJohn Mark Bell2008-10-201-1/+1
| | | | svn path=/trunk/libcss/; revision=5605
* Update commentJohn Mark Bell2008-10-191-1/+8
| | | | svn path=/trunk/libcss/; revision=5604
* Fix parsing of combinators: the CSS 2.1 spec grammar contains inaccuracies ↵John Mark Bell2008-10-191-11/+35
| | | | | | | | -- combinators may be preceded by whitespace. Fix handling of whitespace after a selector list: again, the CSS 2.1 grammar isn't accurate here. svn path=/trunk/libcss/; revision=5603
* Provide an internal mechanism for dumping stylesheets to a file handle.John Mark Bell2008-10-192-0/+175
| | | | | | Make the css21 test driver call this so we can see if it's working. svn path=/trunk/libcss/; revision=5602
* Finish selector list parsingJohn Mark Bell2008-10-193-77/+415
| | | | svn path=/trunk/libcss/; revision=5599
* More work on selector list parsingJohn Mark Bell2008-10-181-18/+99
| | | | svn path=/trunk/libcss/; revision=5597
* Modify CSS2.1 frontend test driver to use the public stylesheet API.John Mark Bell2008-09-251-1/+1
| | | | | | Media type handling may need to change -- 32bits may not be large enough in the long term, and there's no sensible way of extending this without causing ABI breakage in the future. svn path=/trunk/libcss/; revision=5439
* Implement css_stylesheet_append_data and css_stylesheet_data_doneJohn Mark Bell2008-09-251-10/+6
| | | | svn path=/trunk/libcss/; revision=5438
* Create a parser instance for a stylesheet. Also create a level-specific ↵John Mark Bell2008-09-252-2/+40
| | | | | | frontend. This probably wants reworking as we don't really want to be switching on the language level every time we want to interact with the parser frontend. svn path=/trunk/libcss/; revision=5437
* Mechanism for the client to select the language level.John Mark Bell2008-09-251-2/+3
| | | | svn path=/trunk/libcss/; revision=5436
* Add API to get/set a stylesheet's disabled stateJohn Mark Bell2008-09-251-0/+36
| | | | svn path=/trunk/libcss/; revision=5435
* Implement most of stylesheet's public APIJohn Mark Bell2008-09-251-19/+77
| | | | svn path=/trunk/libcss/; revision=5434
* Public stylesheet API & stubbed out implementations.John Mark Bell2008-09-252-0/+140
| | | | | | Make public headers use libcss_ as their guard macro prefix. svn path=/trunk/libcss/; revision=5433
* Implement a bunch of css_stylesheet_*John Mark Bell2008-09-202-24/+107
| | | | svn path=/trunk/libcss/; revision=5376
* More API munging. Also stub out implementations of new APIs.John Mark Bell2008-09-133-1/+190
| | | | svn path=/trunk/libcss/; revision=5306
* Some idle API poking.John Mark Bell2008-09-121-7/+27
| | | | svn path=/trunk/libcss/; revision=5305
* Minor changes.John Mark Bell2008-09-051-2/+0
| | | | svn path=/trunk/libcss/; revision=5255
* Turn internal representation outline into a header file.John Mark Bell2008-08-082-0/+139
| | | | svn path=/trunk/libcss/; revision=4964
* Flag hideous todo thanks to CSSOMJohn Mark Bell2008-08-051-0/+3
| | | | svn path=/trunk/libcss/; revision=4924
* s/handleSelector/handleSelectorList/John Mark Bell2008-08-051-3/+3
| | | | svn path=/trunk/libcss/; revision=4923
* Disable @media and @page -- I'd rather focus on non-nested blocks in the ↵John Mark Bell2008-08-051-0/+7
| | | | | | first instance. svn path=/trunk/libcss/; revision=4922
* Make selector token vector be associated with the ruleset, rather than ↵John Mark Bell2008-08-053-83/+97
| | | | | | | | | having its own event type. Store details about the current construct on the context stack. Document block-content, selector, and declaration stuff. svn path=/trunk/libcss/; revision=4921
* Something approximating @importJohn Mark Bell2008-08-041-4/+29
| | | | svn path=/trunk/libcss/; revision=4904
* Beginnings of a mechanism to intern known strings and compare pointers ↵John Mark Bell2008-08-043-13/+61
| | | | | | effectively. svn path=/trunk/libcss/; revision=4903
* For tokens where there's a possibility of case differences requiring case ↵John Mark Bell2008-08-043-89/+140
| | | | | | insensitive matching, intern lower cased versions of strings alongside the originals. svn path=/trunk/libcss/; revision=4902
* Handle @charsetJohn Mark Bell2008-08-041-1/+24
| | | | svn path=/trunk/libcss/; revision=4901
* Stub out at-rule handlingJohn Mark Bell2008-08-042-1/+47
| | | | svn path=/trunk/libcss/; revision=4899
* Change API of event callback to return css_error (this is more useful than bool)John Mark Bell2008-08-043-49/+159
| | | | | | Implement all the context-related event handlers in the stage 2 parser. svn path=/trunk/libcss/; revision=4898
* Only intern strings when we get a token from the lexer. Strings in tokens ↵John Mark Bell2008-08-013-49/+58
| | | | | | 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
* More stub.John Mark Bell2008-08-011-3/+140
| | | | svn path=/trunk/libcss/; revision=4855
* Stub out a CSS 2.1 stage 2 parser.John Mark Bell2008-08-015-10/+128
| | | | | | Parser core doesn't need to know about css_stylesheet, so change its API. svn path=/trunk/libcss/; revision=4854
* Allow silencing of parser test driver.John Mark Bell2008-08-011-1/+2
| | | | svn path=/trunk/libcss/; revision=4852
* Silence debugJohn Mark Bell2008-08-011-1/+1
| | | | svn path=/trunk/libcss/; revision=4851
* EOF isn't a parse errorJohn Mark Bell2008-08-011-2/+0
| | | | svn path=/trunk/libcss/; revision=4850
* Fix handling of empty strings.John Mark Bell2008-08-011-28/+16
| | | | | | | | Parse errors in blocks are ignored -- it'll be up to the client to deal with this. Fix processing of malformed decl-list entries (e.g. foo: bar; !important;) Fix test driver to calculate remaining length correctly. svn path=/trunk/libcss/; revision=4849
* Fix at-rule processing.John Mark Bell2008-07-311-7/+5
| | | | | | Fix malformed selector input to actually result in a terminated block. svn path=/trunk/libcss/; revision=4848
* Something approximating recovery from malformed at-rules.John Mark Bell2008-07-311-6/+141
| | | | svn path=/trunk/libcss/; revision=4847
* Improve recovery from malformed declarationsJohn Mark Bell2008-07-311-69/+195
| | | | | | Implement recovery from malformed selectors svn path=/trunk/libcss/; revision=4846
* Generate and emit eventsJohn Mark Bell2008-07-302-0/+110
| | | | svn path=/trunk/libcss/; revision=4828
* Implement error recovery for malformed declarations.John Mark Bell2008-07-301-12/+176
| | | | svn path=/trunk/libcss/; revision=4826
* Implement the first-stage parser.John Mark Bell2008-07-303-0/+1765
| | | | | | | | | | | Things missing: 1) Recovery after parse errors 2) Event emission (the locations of DEBUG_EVENTS are about right for this) 3) A second-stage parser 4) Any kind of testsuite svn path=/trunk/libcss/; revision=4825
* 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-0112-0/+2745
Currently comprises a lexer. svn path=/trunk/libcss/; revision=4112