gbranden pushed a commit to branch master
in repository groff.

commit 20f90fffffe09db7ec2ce05d909d2af5a58ba78f
Author: G. Branden Robinson <[email protected]>
AuthorDate: Mon Aug 26 16:09:45 2024 -0500

    src/roff/troff/div.cpp: Trivially refactor.
    
    * src/roff/troff/div.cpp: Trivially refactor.  Rename and boolify
      file-scoped variable `vertical_position_traps_flag` to
      `honor_vertical_position_traps`.  Initialize and assign to it using
      Boolean, not integer, literals.  Also parenthesize complex
      expressions.
    
      (macro_diversion::output, macro_diversion::space)
      (top_level_diversion::output, top_level_diversion::space)
      (top_level_diversion::begin_page, continue_page_eject)
      (vertical_position_traps, init_div_requests): Do it.
---
 ChangeLog              | 12 ++++++++++++
 src/roff/troff/div.cpp | 45 ++++++++++++++++++++++++++-------------------
 2 files changed, 38 insertions(+), 19 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 0695bc524..70506000b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2024-08-28  G. Branden Robinson <[email protected]>
+
+       * src/roff/troff/div.cpp: Trivially refactor.  Rename and
+       boolify file-scoped variable `vertical_position_traps_flag` to
+       `honor_vertical_position_traps`.  Initialize and assign to it
+       using Boolean, not integer, literals.  Also parenthesize complex
+       expressions.
+       (macro_diversion::output, macro_diversion::space)
+       (top_level_diversion::output, top_level_diversion::space)
+       (top_level_diversion::begin_page, continue_page_eject)
+       (vertical_position_traps, init_div_requests): Do it.
+
 2024-08-28  G. Branden Robinson <[email protected]>
 
        [troff]: Boolify and rename member function of `node` class
diff --git a/src/roff/troff/div.cpp b/src/roff/troff/div.cpp
index 806328aa1..a328da8fc 100644
--- a/src/roff/troff/div.cpp
+++ b/src/roff/troff/div.cpp
@@ -44,7 +44,7 @@ static int last_post_line_extra_space = 0; // needed for \n(.a
 static int nl_reg_contents = -1;
 static int dl_reg_contents = 0;
 static int dn_reg_contents = 0;
-static int vertical_position_traps_flag = 1;
+static bool honor_vertical_position_traps = true;
 static vunits truncated_space;
 static vunits needed_space;
 
@@ -314,9 +314,10 @@ void macro_diversion::output(node *nd, int retain_size,
   if (overflow)
     fatal("diversion overflow (vertical position: %1u,"
          " next line height: %2u)", vpos, lineht);
-  if (vertical_position_traps_flag
-      && !diversion_trap.is_null() && diversion_trap_pos > vertical_position
-      && diversion_trap_pos <= vertical_position + x) {
+  if (honor_vertical_position_traps
+      && !diversion_trap.is_null()
+      && (diversion_trap_pos > vertical_position)
+      && (diversion_trap_pos <= vertical_position + x)) {
     vunits trunc = vertical_position + x - diversion_trap_pos;
     if (trunc > v.post)
       trunc = v.post;
@@ -335,7 +336,7 @@ void macro_diversion::output(node *nd, int retain_size,
 
 void macro_diversion::space(vunits n, int)
 {
-  if (vertical_position_traps_flag
+  if (honor_vertical_position_traps
       && !diversion_trap.is_null() && diversion_trap_pos > vertical_position
       && diversion_trap_pos <= vertical_position + n) {
     truncated_space = vertical_position + n - diversion_trap_pos;
@@ -437,24 +438,27 @@ void top_level_diversion::output(node *nd, int 
retain_size,
   vertical_position += v.post_extra;
   if (vertical_position > high_water_mark)
     high_water_mark = vertical_position;
-  if (vertical_position_traps_flag && vertical_position >= page_length)
+  if (honor_vertical_position_traps && vertical_position >= page_length)
     begin_page();
-  else if (vertical_position_traps_flag
-          && next_trap != 0 && vertical_position >= next_trap_pos) {
+  else if (honor_vertical_position_traps
+          && (next_trap != 0 /* nullptr */)
+          && (vertical_position >= next_trap_pos)) {
     nl_reg_contents = vertical_position.to_units();
     truncated_space = v.post;
     spring_trap(next_trap->nm);
   }
   else if (v.post > V0) {
     vertical_position += v.post;
-    if (vertical_position_traps_flag
-       && next_trap != 0 && vertical_position >= next_trap_pos) {
+    if (honor_vertical_position_traps
+       && (next_trap != 0 /* nullptr */)
+       && (vertical_position >= next_trap_pos)) {
       truncated_space = vertical_position - next_trap_pos;
       vertical_position = next_trap_pos;
       nl_reg_contents = vertical_position.to_units();
       spring_trap(next_trap->nm);
     }
-    else if (vertical_position_traps_flag && vertical_position >= page_length)
+    else if (honor_vertical_position_traps
+            && (vertical_position >= page_length))
       begin_page();
     else
       nl_reg_contents = vertical_position.to_units();
@@ -512,7 +516,9 @@ void top_level_diversion::space(vunits n, int forced)
   if (curenv->get_vertical_spacing().to_units())
     curenv->seen_space += n.to_units()
                          / curenv->get_vertical_spacing().to_units();
-  if (vertical_position_traps_flag && next_trap != 0 && y >= next_trap_pos) {
+  if (honor_vertical_position_traps
+      && (next_trap != 0 /* nullptr */)
+      && (y >= next_trap_pos)) {
     vertical_position = next_trap_pos;
     nl_reg_contents = vertical_position.to_units();
     truncated_space = y - vertical_position;
@@ -522,7 +528,8 @@ void top_level_diversion::space(vunits n, int forced)
     vertical_position = V0;
     nl_reg_contents = vertical_position.to_units();
   }
-  else if (vertical_position_traps_flag && y >= page_length && n >= V0)
+  else if (honor_vertical_position_traps
+          && (y >= page_length && n >= V0))
     begin_page(y - page_length);
   else {
     vertical_position = y;
@@ -659,8 +666,8 @@ bool top_level_diversion::begin_page(vunits n)
     the_output->begin_page(page_number, page_length);
   before_first_page = 0;
   nl_reg_contents = vertical_position.to_units();
-  if ((vertical_position_traps_flag && next_trap != 0 /* nullptr */)
-      && next_trap_pos == V0) {
+  if ((honor_vertical_position_traps && (next_trap != 0 /* nullptr */))
+      && (next_trap_pos == V0)) {
     truncated_space = n;
     spring_trap(next_trap->nm);
     return true;
@@ -674,7 +681,7 @@ void continue_page_eject()
   if (topdiv->get_ejecting()) {
     if (curdiv != topdiv)
       error("cannot continue page ejection while diverting output");
-    else if (!vertical_position_traps_flag)
+    else if (!honor_vertical_position_traps)
       error("cannot continue page ejection while vertical position"
            " traps disabled");
     else {
@@ -1011,9 +1018,9 @@ void vertical_position_traps()
 {
   int n;
   if (has_arg() && get_integer(&n))
-    vertical_position_traps_flag = (n > 0);
+    honor_vertical_position_traps = (n > 0);
   else
-    vertical_position_traps_flag = 1;
+    honor_vertical_position_traps = true;
   skip_line();
 }
 
@@ -1267,7 +1274,7 @@ void init_div_requests()
   register_dictionary.define(".trunc",
       new constant_vunits_reg(&truncated_space));
   register_dictionary.define(".vpt",
-      new readonly_register(&vertical_position_traps_flag));
+      new readonly_boolean_register(&honor_vertical_position_traps));
   register_dictionary.define(".z", new diversion_name_reg);
   register_dictionary.define("dl", new variable_reg(&dl_reg_contents));
   register_dictionary.define("dn", new variable_reg(&dn_reg_contents));

_______________________________________________
Groff-commit mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/groff-commit

Reply via email to