A small DOM(Document Object Model) Parsing library. Works on C++14 and above.
Current capabilities:
- Scan markup code.
- Store the markup data in a tree structure.
- Storage of the data is optimized in terms of space and time complexity for fast manipulations like moving whole subtrees and multiple deletions-additions of nodes/attributes.
- Provide minfied or pretty-printed output.
How it works:
- Input file is feeded to lexer which reads ahead of parser and creates and stores tokens in a buffer.
- Parser successively takes tokens from lexer and parses it.
- The parsed stuff is saved to a tree data structure.
- After whatever changes necessary being done to the DOM, user can have two options of printing out the document:
- Minified
- Pretty-printed
Needed work:
- Currently it is not resilient to syntax errors.