diff options
author | Adrian Thurston <thurston@colm.net> | 2018-12-12 14:05:41 +0200 |
---|---|---|
committer | Adrian Thurston <thurston@colm.net> | 2018-12-12 14:05:41 +0200 |
commit | 86abaf24ee9239e5d17114bba50edfcfd4327381 (patch) | |
tree | 650c857ae3cf854981bfcd6e3dd64e30eebb758a | |
parent | fb02d3cb283c022eb98aac426f04077ee1c17fef (diff) | |
download | colm-86abaf24ee9239e5d17114bba50edfcfd4327381.tar.gz |
make tree_to_str available in the library
-rw-r--r-- | src/bytecode.c | 19 | ||||
-rw-r--r-- | src/tree.c | 19 | ||||
-rw-r--r-- | src/tree.h | 2 |
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. */ @@ -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; +} + @@ -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 |