summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@colm.net>2018-12-12 14:05:41 +0200
committerAdrian Thurston <thurston@colm.net>2018-12-12 14:05:41 +0200
commit86abaf24ee9239e5d17114bba50edfcfd4327381 (patch)
tree650c857ae3cf854981bfcd6e3dd64e30eebb758a /src
parentfb02d3cb283c022eb98aac426f04077ee1c17fef (diff)
downloadcolm-86abaf24ee9239e5d17114bba50edfcfd4327381.tar.gz
make tree_to_str available in the library
Diffstat (limited to 'src')
-rw-r--r--src/bytecode.c19
-rw-r--r--src/tree.c19
-rw-r--r--src/tree.h2
3 files changed, 21 insertions, 19 deletions
diff --git a/src/bytecode.c b/src/bytecode.c
index 74d1a25f..ee238b31 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -151,25 +151,6 @@ void colm_parser_set_context( program_t *prg, tree_t **sp, parser_t *parser, str
parser->pda_run->context = val;
}
-static head_t *tree_to_str( program_t *prg, tree_t **sp, tree_t *tree, int trim, int attrs )
-{
- /* Collect the tree data. */
- str_collect_t collect;
- init_str_collect( &collect );
-
- if ( attrs )
- colm_print_tree_collect_a( prg, sp, &collect, tree, trim );
- else
- colm_print_tree_collect( prg, sp, &collect, tree, trim );
-
- /* Set up the input stream. */
- head_t *ret = string_alloc_full( prg, collect.data, collect.length );
-
- str_collect_destroy( &collect );
-
- return ret;
-}
-
static head_t *tree_to_str_xml( program_t *prg, tree_t **sp, tree_t *tree, int trim, int attrs )
{
/* Collect the tree data. */
diff --git a/src/tree.c b/src/tree.c
index 69dc27a9..4bd8db40 100644
--- a/src/tree.c
+++ b/src/tree.c
@@ -1599,3 +1599,22 @@ struct colm_location *colm_find_location( program_t *prg, tree_t *tree )
return loc_search( prg, tree );
}
+head_t *tree_to_str( program_t *prg, tree_t **sp, tree_t *tree, int trim, int attrs )
+{
+ /* Collect the tree data. */
+ str_collect_t collect;
+ init_str_collect( &collect );
+
+ if ( attrs )
+ colm_print_tree_collect_a( prg, sp, &collect, tree, trim );
+ else
+ colm_print_tree_collect( prg, sp, &collect, tree, trim );
+
+ /* Set up the input stream. */
+ head_t *ret = string_alloc_full( prg, collect.data, collect.length );
+
+ str_collect_destroy( &collect );
+
+ return ret;
+}
+
diff --git a/src/tree.h b/src/tree.h
index c3495c67..ee05cdc3 100644
--- a/src/tree.h
+++ b/src/tree.h
@@ -385,6 +385,8 @@ void colm_print_tree_collect_xml( program_t *prg, tree_t **sp,
void colm_print_tree_collect_xml_ac( program_t *prg, tree_t **sp,
str_collect_t *collect, tree_t *tree, int trim );
+head_t *tree_to_str( program_t *prg, tree_t **sp, tree_t *tree, int trim, int attrs );
+
#if defined(__cplusplus)
}
#endif