gbranden pushed a commit to branch master in repository groff. commit 3336497f15ba63b1a91a11afe692f1ab2fe470f4 Author: G. Branden Robinson <g.branden.robin...@gmail.com> AuthorDate: Sat Mar 15 15:54:11 2025 -0500
[troff]: Trivially refactor. * src/roff/troff/node.cpp: Relocate `dump_node_list_in_reverse` function from here... * src/roff/troff/env.cpp: ...to here. --- ChangeLog | 8 ++++++++ src/roff/troff/env.cpp | 27 ++++++++++++++++++++++++++- src/roff/troff/node.cpp | 28 ---------------------------- 3 files changed, 34 insertions(+), 29 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9be5d62e3..76ff7a700 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2025-03-15 G. Branden Robinson <g.branden.robin...@gmail.com> + + [troff]: Trivially refactor. + + * src/roff/troff/node.cpp: Relocate `dump_node_list_in_reverse` + function from here... + * src/roff/troff/env.cpp: ...to here. + 2025-03-15 G. Branden Robinson <g.branden.robin...@gmail.com> * src/roff/troff/node.cpp (class kern_pair_node): Add diff --git a/src/roff/troff/env.cpp b/src/roff/troff/env.cpp index 37dd7954c..fb81a1dc9 100644 --- a/src/roff/troff/env.cpp +++ b/src/roff/troff/env.cpp @@ -2418,7 +2418,32 @@ void environment::dump_troff_state() #undef SPACES } -extern void dump_node_list_in_reverse(node *); +static void dump_node_list_in_reverse(node *nlist) +{ + // It's stored in reverse order already; this puts it forward again. + std::stack<node *> reversed_node_list; + node *n = nlist; + + while (n != 0 /* nullptr */) { + reversed_node_list.push(n); + n = n->next; + } + fputc('[', stderr); + bool need_comma = false; + while (!reversed_node_list.empty()) { + if (need_comma) + fputs(",\n", stderr); + reversed_node_list.top()->dump_node(); + reversed_node_list.pop(); + need_comma = true; + } + // !need_comma implies that the list was empty. JSON convention is to + // put a space between an empty pair of square brackets. + if (!need_comma) + fputc(' ', stderr); + fputs("]\n", stderr); + fflush(stderr); +} void environment::dump_pending_nodes() { diff --git a/src/roff/troff/node.cpp b/src/roff/troff/node.cpp index f43dddb8d..b4ff2dc31 100644 --- a/src/roff/troff/node.cpp +++ b/src/roff/troff/node.cpp @@ -2742,34 +2742,6 @@ void container_node::dump_node() fflush(stderr); } -// TODO: Move this into env.cpp. -void dump_node_list_in_reverse(node *nlist) -{ - // It's stored in reverse order already; this puts it forward again. - std::stack<node *> reversed_node_list; - node *n = nlist; - - while (n != 0 /* nullptr */) { - reversed_node_list.push(n); - n = n->next; - } - fputc('[', stderr); - bool need_comma = false; - while (!reversed_node_list.empty()) { - if (need_comma) - fputs(",\n", stderr); - reversed_node_list.top()->dump_node(); - reversed_node_list.pop(); - need_comma = true; - } - // !need_comma implies that the list was empty. JSON convention is to - // put a space between an empty pair of square brackets. - if (!need_comma) - fputc(' ', stderr); - fputs("]\n", stderr); - fflush(stderr); -} - hunits kern_pair_node::width() { return n1->width() + n2->width() + amount; _______________________________________________ groff-commit mailing list groff-commit@gnu.org https://lists.gnu.org/mailman/listinfo/groff-commit