aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--man/man3/cmark.34
-rw-r--r--src/cmark.h5
-rw-r--r--src/node.c11
3 files changed, 20 insertions, 0 deletions
diff --git a/man/man3/cmark.3 b/man/man3/cmark.3
index efce745..e12e5ee 100644
--- a/man/man3/cmark.3
+++ b/man/man3/cmark.3
@@ -135,6 +135,10 @@ typedef enum {
.PP
+\fIint\fR \fBcmark_node_set_type\fR(\fIcmark_node *node\fR, \fIcmark_node_type node_type\fR)
+
+.PP
+
\fIconst char*\fR \fBcmark_node_get_string_content\fR(\fIcmark_node *node\fR)
.PP
diff --git a/src/cmark.h b/src/cmark.h
index f96cea9..f1a6da6 100644
--- a/src/cmark.h
+++ b/src/cmark.h
@@ -137,6 +137,11 @@ cmark_node_get_type(cmark_node *node);
/**
*/
+CMARK_EXPORT int
+cmark_node_set_type(cmark_node *node, cmark_node_type node_type);
+
+/**
+ */
CMARK_EXPORT const char*
cmark_node_get_string_content(cmark_node *node);
diff --git a/src/node.c b/src/node.c
index 243c3e6..674f988 100644
--- a/src/node.c
+++ b/src/node.c
@@ -84,6 +84,17 @@ cmark_node_get_type(cmark_node *node)
}
}
+int
+cmark_node_set_type(cmark_node *node, cmark_node_type node_type)
+{
+ if (node == NULL) {
+ return 0;
+ } else {
+ node->type = node_type;
+ return 1;
+ }
+}
+
static const char*
S_type_string(cmark_node *node)
{