utils/macros.h: Add <ctype.h> and `foocmp' helper macros.
[mLib] / struct / t / da-test.c
index 0f3e625..ba86a8d 100644 (file)
@@ -10,6 +10,7 @@
 
 #include "darray.h"
 #include "exc.h"
+#include "macros.h"
 
 DA_DECL(vec, int);
 
@@ -49,18 +50,18 @@ int main(void)
     p = strtok(buf, " ");
 
     TRY {
-      if (strcmp(p, "push") == 0) {
+      if (STRCMP(p, ==, "push")) {
        int n = atoi(strtok(0, " "));
        DA_PUSH(&v, n);
-      } else if (strcmp(p, "unshift") == 0) {
+      } else if (STRCMP(p, ==, "unshift")) {
        int n = atoi(strtok(0, " "));
        DA_UNSHIFT(&v, n);
-      } else if (strcmp(p, "pop") == 0) {
+      } else if (STRCMP(p, ==, "pop")) {
        printf("%i\n", DA_POP(&v));
-      } else if (strcmp(p, "shift") == 0) {
+      } else if (STRCMP(p, ==, "shift")) {
        printf("%i\n", DA_SHIFT(&v));
-      } else if (strcmp(p, "insert") == 0 ||
-                strcmp(p, "append") == 0) {
+      } else if (STRCMP(p, ==, "insert") ||
+                STRCMP(p, ==, "append")) {
        vec vv;
        char *q = p;
        DA_CREATE(&vv);
@@ -69,7 +70,7 @@ int main(void)
          int n = atoi(p);
          DA_PUSH(&vv, n);
        }
-       if (strcmp(q, "insert") == 0) {
+       if (STRCMP(q, ==, "insert")) {
          DA_SHUNT(&v, DA_LEN(&vv));
          DA_SLIDE(&v, DA_LEN(&vv));
          memcpy(DA(&v), DA(&vv), DA_LEN(&vv) * sizeof(int));
@@ -80,13 +81,13 @@ int main(void)
          memcpy(DA(&v) + l, DA(&vv), DA_LEN(&vv) * sizeof(int));
        }
        DA_DESTROY(&vv);
-      } else if (strcmp(p, "delete") == 0) {
+      } else if (STRCMP(p, ==, "delete")) {
        int n = atoi(strtok(0, " "));
        DA_UNSLIDE(&v, n);
-      } else if (strcmp(p, "reduce") == 0) {
+      } else if (STRCMP(p, ==, "reduce")) {
        int n = atoi(strtok(0, " "));
        DA_SHRINK(&v, n);
-      } else if (strcmp(p, "set") == 0) {
+      } else if (STRCMP(p, ==, "set")) {
        size_t i = atoi(strtok(0, " "));
        int n = atoi(strtok(0, " "));
        size_t l = DA_LEN(&v);
@@ -97,23 +98,23 @@ int main(void)
            DA(&v)[j] = -1;
        }
        DA(&v)[i] = n;
-      } else if (strcmp(p, "get") == 0) {
+      } else if (STRCMP(p, ==, "get")) {
        size_t i = atoi(strtok(0, " "));
        if (i >= DA_LEN(&v))
          puts("*RANGE*");
        else
          printf("%i\n", DA(&v)[i]);
-      } else if (strcmp(p, "first") == 0) {
+      } else if (STRCMP(p, ==, "first")) {
        if (DA_LEN(&v))
          printf("%i\n", DA_FIRST(&v));
        else
          puts("*RANGE*");
-      } else if (strcmp(p, "last") == 0) {
+      } else if (STRCMP(p, ==, "last")) {
        if (DA_LEN(&v))
          printf("%i\n", DA_LAST(&v));
        else
          puts("*RANGE*");
-      } else if (strcmp(p, "show") == 0) {
+      } else if (STRCMP(p, ==, "show")) {
        if (DA_LEN(&v) == 0)
          puts("*EMPTY*");
        else {