summaryrefslogtreecommitdiff
path: root/src/blocks.c
AgeCommit message (Collapse)Author
2014-11-22Make parser accept a char*Nick Wellnhofer
2014-11-22Fix and test node_checkNick Wellnhofer
2014-11-17Make parse_inlines add directly to parent.John MacFarlane
Previously parse_inlines returned a list of parsed inlines. This had to be added to the parent, and fix_parents had to be called to manually add the 'parent' links to the children, and the 'last_child' link to the parent. Now parse_inlines takes the parent block as a parameter, and uses cmark_node_append_child to add the children, so that the pointers should be properly managed. This avoids the need for the fix_parents pass.
2014-11-17Set prev, parent and last_child for inlinesNick Wellnhofer
2014-11-17Rename ast.h to parser.hNick Wellnhofer
2014-11-17Switch cmark_node_inl over to cmark_nodeNick Wellnhofer
2014-11-17Switch cmark_node_block over to cmark_nodeNick Wellnhofer
2014-11-16Moved refmap from the top-level block node to the doc_parser.John MacFarlane
2014-11-16Export enums for inline, block types, list and list delim types.John MacFarlane
Also switched from `bullet`, `ordered`, `parens`, `period` to `CMARK_BULLET_LIST`, `CMARK_ORDERED_LIST`, `CMARK_PAREN_DELIM`, `CMARK_PERIOD_DELIM`.
2014-11-16Removed CMARK_CODE_INDENT, CODE_INDENT from public header.John MacFarlane
Now it's in blocks.c, the only module that uses it.
2014-11-16Probe for stdbool.hNick Wellnhofer
Let cmake create a cmark_config.h file to deal with platforms missing stdbool.h.
2014-11-16Use named enum typesNick Wellnhofer
Needed for C++ compatibility.
2014-11-16Cast void pointers explicitlyNick Wellnhofer
Needed for C++ compatibility.
2014-11-16Moved AST details from public header cmark.h to private ast.h.John MacFarlane
2014-11-15Expose lower-level parsing API.John MacFarlane
The new functions cmark_new_doc_parser, cmark_free_doc_parser, cmark_process_line, and cmark_finish allow you to feed lines one by one (possibly from several files) to the parser and call finish when you're done. This is now used in main for mulitple files.
2014-11-14Added some includes of buffer.hJohn MacFarlane
2014-11-13Moved the timing macros to get finer-grained information.John MacFarlane
2014-11-13Added ast.[c,h] for AST definitions and AST-manipulating functions.John MacFarlane
2014-11-12Mark some functions as staticNick Wellnhofer
2014-11-06Use non-recursive algorithm for process_inlines.John MacFarlane
Closes #187.
2014-11-06Reformatted code consistently.John MacFarlane
2014-11-05Made block-freeing slightly more efficient by using last_child.John MacFarlane
2014-11-05Made cmark_free_nodes non-recursive.John MacFarlane
See #187.
2014-10-26Require space before closing # sequence in ATX header.John MacFarlane
Closes #169.
2014-10-24Renamed c program and library stmd -> cmark.John MacFarlane
Also renamed internal library functions accordingly.
2014-10-24Add a newline to a line that doesn't end with one.John MacFarlane
Closes #115.
2014-10-24Merge branch 'master' of https://github.com/tchetch/stmd into tchetch-masterJohn MacFarlane
Conflicts: src/inlines.c
2014-10-24Use unsigned char, not char, throughout.John MacFarlane
Closes #43.
2014-10-18Reindented c sources.John MacFarlane
2014-10-06- Use of calloc instead of malloctchetch
- Test for NULL after allocation
2014-09-17Better handle trailing backslashes in ATX-style headersJordan Milne
Previously something like '# `\' would hang the parser while it waited for an extra character that wasn't there.
2014-09-15Cleanup external APIsVicent Marti
2014-09-10Cleanup reference implementationVicent Marti
2014-09-09Abstract the Block unionVicent Marti
2014-09-09UTF8-aware detabbing and entity handlingVicent Marti
2014-09-09Rename block literalsVicent Marti
2014-09-09Rename node_blockVicent Marti
2014-09-09Rename to strbufVicent Marti
2014-09-09379/62Vicent Marti
2014-09-09368/73Vicent Marti
2014-09-09338/103Vicent Marti
2014-09-09It buiiiildsVicent Marti
2014-09-09ffffixVicent Marti
2014-09-09lolVicent Marti
2014-08-13Initial commitJohn MacFarlane