From 14588ca3cd25982bdd34e5fc20e69c611e1c8817 Mon Sep 17 00:00:00 2001 From: Nick Wellnhofer Date: Wed, 19 Nov 2014 17:02:04 +0100 Subject: Accessors for fence info Only fence info should be relevant for rendering. Accessors for other fenced code data could be added for completeness but they don't seem very useful. --- src/cmark.h | 6 ++++++ src/node.c | 21 +++++++++++++++++++++ 2 files changed, 27 insertions(+) (limited to 'src') diff --git a/src/cmark.h b/src/cmark.h index 5305dfb..d9daccd 100644 --- a/src/cmark.h +++ b/src/cmark.h @@ -120,6 +120,12 @@ cmark_node_get_list_tight(cmark_node *node); CMARK_EXPORT int cmark_node_set_list_tight(cmark_node *node, int tight); +CMARK_EXPORT const char* +cmark_node_get_fence_info(cmark_node *node); + +CMARK_EXPORT int +cmark_node_set_fence_info(cmark_node *node, const char *info); + CMARK_EXPORT const char* cmark_node_get_url(cmark_node *node); diff --git a/src/node.c b/src/node.c index c1f29d3..814e0e1 100644 --- a/src/node.c +++ b/src/node.c @@ -226,6 +226,27 @@ cmark_node_set_list_tight(cmark_node *node, int tight) { } } +const char* +cmark_node_get_fence_info(cmark_node *node) { + if (node->type == NODE_FENCED_CODE) { + return cmark_strbuf_cstr(&node->as.code.info); + } + else { + return NULL; + } +} + +int +cmark_node_set_fence_info(cmark_node *node, const char *info) { + if (node->type == NODE_FENCED_CODE) { + cmark_strbuf_sets(&node->as.code.info, info); + return 1; + } + else { + return 0; + } +} + const char* cmark_node_get_url(cmark_node *node) { switch (node->type) { -- cgit v1.2.3