static int rndr_strikethrough(struct buf *ob, const struct buf *text, void *opaque) { SPAN_CALLBACK("strikethrough", 1, buf2str(text)); }
static int rndr_superscript(struct buf *ob, const struct buf *text, void *opaque) { SPAN_CALLBACK("superscript", 1, buf2str(text)); }
static int rndr_raw_html(struct buf *ob, const struct buf *text, void *opaque) { SPAN_CALLBACK("raw_html", 1, buf2str(text)); }
static int rndr_triple_emphasis(struct buf *ob, const struct buf *text, void *opaque) { SPAN_CALLBACK("triple_emphasis", 1, buf2str(text)); }
static int rndr_linebreak(struct buf *ob, void *opaque) { SPAN_CALLBACK("linebreak", 0); }
static int rndr_link(struct buf *ob, const struct buf *link, const struct buf *title, const struct buf *content, void *opaque) { SPAN_CALLBACK("link", 3, buf2str(link), buf2str(title), buf2str(content)); }
static int rndr_codespan(struct buf *ob, const struct buf *text, void *opaque) { SPAN_CALLBACK("codespan", 1, buf2str(text)); }
static int rndr_image(struct buf *ob, const struct buf *link, const struct buf *title, const struct buf *alt, void *opaque) { SPAN_CALLBACK("image", 3, buf2str(link), buf2str(title), buf2str(alt)); }
/*** * SPAN LEVEL */ static int rndr_autolink(struct buf *ob, const struct buf *link, enum mkd_autolink type, void *opaque) { SPAN_CALLBACK("autolink", 2, buf2str(link), type == MKDA_NORMAL ? CSTR2SYM("url") : CSTR2SYM("email")); }
static int rndr_footnote_ref(struct buf *ob, unsigned int num, void *opaque) { SPAN_CALLBACK("footnote_ref", 1, INT2FIX(num)); }
static int rndr_quote(struct buf *ob, const struct buf *text, void *opaque) { SPAN_CALLBACK("quote", 1, buf2str(text)); }
static int rndr_highlight(struct buf *ob, const struct buf *text, void *opaque) { SPAN_CALLBACK("highlight", 1, buf2str(text)); }
static int rndr_underline(struct buf *ob, const struct buf *text, void *opaque) { SPAN_CALLBACK("underline", 1, buf2str(text)); }