]> granicus.if.org Git - graphviz/commitdiff
API BREAK: return a C99 bool from 'splineMerge' instead of a boolean
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 15 Jan 2022 17:19:21 +0000 (09:19 -0800)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 15 Jan 2022 23:03:23 +0000 (15:03 -0800)
CHANGELOG.md
lib/common/types.h
lib/dotgen/dotsplines.c
lib/neatogen/multispline.c
lib/neatogen/neatosplines.c
lib/ortho/ortho.c

index acde87af4b769f093fad83958c6566932fe38b77..be58dcaab61d2b65a07204a98b5784156d92b5fc 100644 (file)
@@ -13,6 +13,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 - **Breaking**: The `insidefn` member of the `shape_functions` struct must now
   be a pointer to a function returning a C99 `bool` instead of a
   Graphviz-specific `boolean`.
+- **Breaking**: The `splineMerge` member of the `splineInfo` struct must now be
+  a pointer to a function returning a C99 `bool` instead of a Graphviz-specific
+  `boolean`.
 - **Breaking**: Graphviz headers no longer define the constant `MAXSHORT`. A
   drop-in replacement is `SHRT_MAX` in the C standard library’s limits.h.
 - **Breaking**: Graphviz headers no lnger define `NIL` macros. A drop-in
index 9d9454b04cdd22b5c4e73fb7d42166c799e7200b..c6dc9b79f2d997d8857d04d9a31d27bab386ca58 100644 (file)
@@ -78,7 +78,7 @@ extern "C" {
 
     typedef struct {
        boolean(*swapEnds) (edge_t * e);        /* Should head and tail be swapped? */
-       boolean(*splineMerge) (node_t * n);     /* Is n a node in the middle of an edge? */
+       bool(*splineMerge) (node_t * n);        /* Is n a node in the middle of an edge? */
        boolean ignoreSwap;                     /* Test for swapped edges if false */
        boolean isOrtho;                        /* Orthogonal routing used */
     } splineInfo;
index 7c6de0a9529fdeb5c731327f5c03513b72985acc..8d7db1567244d52eb000753d12cc886575474a82 100644 (file)
@@ -147,7 +147,7 @@ getmainedge(edge_t * e)
     return le;
 }
 
-static boolean spline_merge(node_t * n)
+static bool spline_merge(node_t * n)
 {
     return ND_node_type(n) == VIRTUAL
            && (ND_in(n).size > 1 || ND_out(n).size > 1);
@@ -377,7 +377,7 @@ static void _dot_splines(graph_t * g, int normalize)
                ED_label(fe)->pos = ND_coord(n);
                ED_label(fe)->set = TRUE;
            }
-           if (ND_node_type(n) != NORMAL && sinfo.splineMerge(n) == FALSE)
+           if (ND_node_type(n) != NORMAL && !sinfo.splineMerge(n))
                continue;
            for (k = 0; (e = ND_out(n).list[k]); k++) {
                if (ED_edge_type(e) == FLATORDER || ED_edge_type(e) == IGNORED)
@@ -1872,7 +1872,7 @@ make_regular_edge(graph_t* g, spline_info_t* sp, path * P, edge_t ** edges, int
        tn = agtail(e);
        hn = aghead(e);
        b = tend.nb = maximal_bbox(g, sp, tn, NULL, e);
-       beginpath(P, e, REGULAREDGE, &tend, spline_merge(tn) != FALSE);
+       beginpath(P, e, REGULAREDGE, &tend, spline_merge(tn));
        b.UR.y = tend.boxes[tend.boxn - 1].UR.y;
        b.LL.y = tend.boxes[tend.boxn - 1].LL.y;
        b = makeregularend(b, BOTTOM,
@@ -1899,7 +1899,7 @@ make_regular_edge(graph_t* g, spline_info_t* sp, path * P, edge_t ** edges, int
                continue;
            }
            hend.nb = maximal_bbox(g, sp, hn, e, ND_out(hn).list[0]);
-           endpath(P, e, REGULAREDGE, &hend, spline_merge(aghead(e)) != FALSE);
+           endpath(P, e, REGULAREDGE, &hend, spline_merge(aghead(e)));
            b = makeregularend(hend.boxes[hend.boxn - 1], TOP,
                       ND_coord(hn).y + GD_rank(g)[ND_rank(hn)].ht2);
            if (b.LL.x < b.UR.x && b.LL.y < b.UR.y)
@@ -1943,7 +1943,7 @@ make_regular_edge(graph_t* g, spline_info_t* sp, path * P, edge_t ** edges, int
            hn = aghead(e);
            boxes_clear(&boxes);
            tend.nb = maximal_bbox(g, sp, tn, ND_in(tn).list[0], e);
-           beginpath(P, e, REGULAREDGE, &tend, spline_merge(tn) != FALSE);
+           beginpath(P, e, REGULAREDGE, &tend, spline_merge(tn));
            b = makeregularend(tend.boxes[tend.boxn - 1], BOTTOM,
                       ND_coord(tn).y - GD_rank(g)[ND_rank(tn)].ht1);
            if (b.LL.x < b.UR.x && b.LL.y < b.UR.y)
@@ -1954,7 +1954,7 @@ make_regular_edge(graph_t* g, spline_info_t* sp, path * P, edge_t ** edges, int
        boxes_append(&boxes, rank_box(sp, g, ND_rank(tn)));
        b = hend.nb = maximal_bbox(g, sp, hn, e, NULL);
        endpath(P, hackflag ? &fwdedgeb.out : e, REGULAREDGE, &hend,
-               spline_merge(aghead(e)) != FALSE);
+               spline_merge(aghead(e)));
        b.UR.y = hend.boxes[hend.boxn - 1].UR.y;
        b.LL.y = hend.boxes[hend.boxn - 1].LL.y;
        b = makeregularend(b, TOP,
index 49d5244b69c3b71dfd7310c231d66e6078a94d30..dc5d1489f67c96a5257141e2bdd05e5a609b0724 100644 (file)
 #include <neatogen/delaunay.h>
 #include <neatogen/neatoprocs.h>
 #include <math.h>
+#include <stdbool.h>
 
-
-static boolean spline_merge(node_t * n)
+static bool spline_merge(node_t * n)
 {
     (void)n;
-    return FALSE;
+    return false;
 }
 
 static boolean swap_ends_p(edge_t * e)
index 77ed4779e3743023d4671ef81c911aa31d586737..b572283594f1b8fd0e575bb48f3f5cf71e830df6 100644 (file)
 #endif
 
 
-static boolean spline_merge(node_t * n)
+static bool spline_merge(node_t * n)
 {
     (void)n;
-    return FALSE;
+    return false;
 }
 
 static boolean swap_ends_p(edge_t * e)
index 9f447e5da36ec327d403149bf695774f561af4c0..807a28d4d2853a1e87315e86610e87147d2546e4 100644 (file)
@@ -1222,10 +1222,10 @@ static int edgecmp(epair_t* e0, epair_t* e1)
     return e0->d - e1->d;
 }
 
-static boolean spline_merge(node_t * n)
+static bool spline_merge(node_t * n)
 {
     (void)n;
-    return FALSE;
+    return false;
 }
 
 static boolean swap_ends_p(edge_t * e)