MCPcopy Create free account
hub / github.com/commonmark/cmark / cmark_render_xml

Function cmark_render_xml

src/xml.c:209–229  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

207}
208
209char *cmark_render_xml(cmark_node *root, int options) {
210 char *result;
211 cmark_strbuf xml = CMARK_BUF_INIT(root->mem);
212 cmark_event_type ev_type;
213 cmark_node *cur;
214 struct render_state state = {&xml, 0};
215
216 cmark_iter *iter = cmark_iter_new(root);
217
218 cmark_strbuf_puts(state.xml, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
219 cmark_strbuf_puts(state.xml,
220 "<!DOCTYPE document SYSTEM \"CommonMark.dtd\">\n");
221 while ((ev_type = cmark_iter_next(iter)) != CMARK_EVENT_DONE) {
222 cur = cmark_iter_get_node(iter);
223 S_render_node(cur, ev_type, &state, options);
224 }
225 result = (char *)cmark_strbuf_detach(&xml);
226
227 cmark_iter_free(iter);
228 return result;
229}

Callers 7

render_xmlFunction · 0.85
sub_documentFunction · 0.85
source_posFunction · 0.85
source_pos_inlinesFunction · 0.85
ref_source_posFunction · 0.85
print_documentFunction · 0.85
LLVMFuzzerTestOneInputFunction · 0.85

Calls 7

cmark_iter_newFunction · 0.85
cmark_strbuf_putsFunction · 0.85
cmark_iter_nextFunction · 0.85
cmark_iter_get_nodeFunction · 0.85
cmark_strbuf_detachFunction · 0.85
cmark_iter_freeFunction · 0.85
S_render_nodeFunction · 0.70

Tested by

no test coverage detected