Change explicit variable name checks into use of dict_class_from_id().
authorBen Pfaff <blp@gnu.org>
Thu, 11 Mar 2004 07:30:36 +0000 (07:30 +0000)
committerBen Pfaff <blp@gnu.org>
Thu, 11 Mar 2004 07:30:36 +0000 (07:30 +0000)
src/ChangeLog
src/dictionary.c
src/get.c
src/sel-if.c
src/sysfile-info.c
src/vars-prs.c
src/vfm.c
src/weight.c

index 82f9fca442594cdf65ec5851abebb635ceed4db3..4abd99da40693a7bb3a5405fff8aa151d8dbba4d 100644 (file)
@@ -1,3 +1,23 @@
+Wed Mar 10 23:25:13 2004  Ben Pfaff  <blp@gnu.org>
+
+       Change explicit variable name checks into use of
+       dict_class_from_id().
+
+       * dictionary.c: (dict_create_var)  Change explicit variable name
+       check into use of dict_class_from_id().
+
+       * get.c: (trim_dictionary) Ditto.
+
+       * sel-if.c: (cmd_filter) Ditto.
+
+       * sysfile-info.c: (cmd_display) Ditto.
+
+       * vars-prs.c: (parse_DATA_LIST_vars) Ditto.
+
+       * vfm.c: (arrange_compaction) Ditto.
+
+       * weight.c: (cmd_weight) Ditto.
+
 Wed Mar 10 21:16:34 2004  Ben Pfaff  <blp@gnu.org>
 
        * temporary.c: (cmd_temporary) When TEMPORARY was the first
index 9b69c89844a347e041269e783f0a54a9af366e95..adf3b29efd45e4b3261ed8564c9de7948beb348e 100644 (file)
@@ -236,7 +236,7 @@ dict_create_var (struct dictionary *d, const char *name, int width)
   v->fv = d->next_value_idx;
   v->nv = width == 0 ? 1 : DIV_RND_UP (width, 8);
   v->init = 1;
-  v->reinit = name[0] != '#';
+  v->reinit = dict_class_from_id (name) != DC_SCRATCH;
   v->miss_type = MISSING_NONE;
   if (v->type == NUMERIC)
     {
index e0ecc55d93c3c88c6e64080db8086c3639de76c4..df6e207cbb8b41862d178863563731e854599cd1 100644 (file)
--- a/src/get.c
+++ b/src/get.c
@@ -312,7 +312,7 @@ trim_dictionary (struct dictionary *dict, int *options)
       v = xmalloc (sizeof *v * dict_get_var_cnt (dict));
       nv = 0;
       for (i = 0; i < dict_get_var_cnt (dict); i++) 
-        if (dict_get_var (dict, i)->name[0] == '#')
+        if (dict_class_from_id (dict_get_var (dict, i)->name) == DC_SCRATCH)
           v[nv++] = dict_get_var (dict, i);
       dict_delete_vars (dict, v, nv);
       free (v);
index 514c44711a78bd5df5af762d74054876ab29edfd..f686a9ddf57ed9180f815a1965daa17ead0c909b 100644 (file)
@@ -105,7 +105,7 @@ cmd_filter (void)
          return CMD_FAILURE;
        }
 
-      if (v->name[0] == '#')
+      if (dict_class_from_id (v->name) == DC_SCRATCH)
        {
          msg (SE, _("The filter variable may not be scratch."));
          return CMD_FAILURE;
index f35bead75d0e2ee74f763ed36dbd8bb0fcb37626..e4a2dce720762c0e22ccc37615aee998e81941b0 100644 (file)
@@ -247,7 +247,7 @@ cmd_display (void)
        {
          int i, m;
          for (i = 0, m = n; i < n; i++)
-           if (vl[i]->name[0] != '#')
+           if (dict_class_from_id (vl[i]->name) != DC_SCRATCH)
              {
                vl[i] = NULL;
                m--;
index 8b15fd7bc91a8a1f44156788554028452ee58320..6f3d7f3e279b3fd6745cc6dead6154ac98bf72b9 100644 (file)
@@ -392,7 +392,8 @@ parse_DATA_LIST_vars (char ***names, int *nnames, int pv_opts)
          lex_error ("expecting variable name");
          goto fail;
        }
-      if (tokid[0] == '#' && (pv_opts & PV_NO_SCRATCH))
+      if (dict_class_from_id (tokid) == DC_SCRATCH
+          && (pv_opts & PV_NO_SCRATCH))
        {
          msg (SE, _("Scratch variables not allowed here."));
          goto fail;
index 07bfaad30a33d9d58d842fbbfb2e33d6d404a53a..51bd02cc5c14e8707789670ec81e4324ed947697 100644 (file)
--- a/src/vfm.c
+++ b/src/vfm.c
@@ -346,7 +346,7 @@ arrange_compaction (void)
       {
         struct variable *v = dict_get_var (temp_dict, i);
 
-        if (v->name[0] != '#')
+        if (dict_class_from_id (v->name) != DC_SCRATCH)
           {
             assert (v->nv > 0);
             count_values += v->nv;
@@ -1260,7 +1260,7 @@ compact_case (struct ccase *dest, const struct ccase *src)
     {
       struct variable *v = dict_get_var (default_dict, i);
       
-      if (v->name[0] == '#')
+      if (dict_class_from_id (v->name) == DC_SCRATCH)
        continue;
 
       if (v->type == NUMERIC)
@@ -1285,7 +1285,7 @@ finish_compaction (void)
     {
       struct variable *v = dict_get_var (default_dict, i);
 
-      if (v->name[0] == '#'
+      if (dict_class_from_id (v->name) == DC_SCRATCH
         dict_delete_var (default_dict, v);
       else
         i++;
index fd19f8c8978a371ea6f3003dc4a92a6f2eca32f1..41dc33f65562becfde277be97d86165e320a50e1 100644 (file)
@@ -54,7 +54,7 @@ cmd_weight (void)
          msg (SE, _("The weighting variable must be numeric."));
          return CMD_FAILURE;
        }
-      if (v->name[0] == '#')
+      if (dict_class_from_id (v->name) == DC_SCRATCH)
        {
          msg (SE, _("The weighting variable may not be scratch."));
          return CMD_FAILURE;