gbranden pushed a commit to branch master
in repository groff.
commit 39e5cf5a5d0195f9fba6f0ddc8326f5b37181235
Author: G. Branden Robinson <[email protected]>
AuthorDate: Thu Sep 11 12:16:15 2025 -0500
[troff]: Refactor (1/3).
Explicitly "asciify" non-interpreted nodes as nothing. These correspond
to what is bracketed by `\?` escape sequences.
* src/roff/troff/input.cpp (class non_interpreted_node): Declare
`asciify` member function, thus overriding base class.
(non_interpreted_node::asciify): Delete the `this` object and return.
This prepares to make the `node` class's `asciify()` member function
pure virtual.
---
ChangeLog | 11 +++++++++++
src/roff/troff/input.cpp | 6 ++++++
2 files changed, 17 insertions(+)
diff --git a/ChangeLog b/ChangeLog
index b609f8eb9..342f81a45 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2025-09-11 G. Branden Robinson <[email protected]>
+
+ [troff]: Refactor. Explicitly "asciify" non-interpreted nodes
+ as nothing. These correspond to what is bracketed by `\?`
+ escape sequences.
+
+ * src/roff/troff/input.cpp (class non_interpreted_node): Declare
+ `asciify` member function, thus overriding base class.
+ (non_interpreted_node::asciify): Delete the `this` object and
+ return.
+
2025-09-11 G. Branden Robinson <[email protected]>
* src/roff/groff/tests/asciify-request-works.sh: Add test case
diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp
index ce67bc7e1..f08836782 100644
--- a/src/roff/troff/input.cpp
+++ b/src/roff/troff/input.cpp
@@ -6013,6 +6013,7 @@ class non_interpreted_node : public node {
public:
non_interpreted_node(const macro &);
bool interpret(macro *);
+ void asciify(macro *);
node *copy();
int ends_sentence();
bool is_same_as(node *);
@@ -6050,6 +6051,11 @@ bool non_interpreted_node::is_tag()
return false;
}
+void non_interpreted_node::asciify(macro *)
+{
+ delete this;
+}
+
node *non_interpreted_node::copy()
{
return new non_interpreted_node(mac);
_______________________________________________
groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit