Encapsulated the static data of procedure.[ch] into a single object, to be
[pspp-builds.git] / src / language / stats / correlations.q
index 830ae37b1ca6259c979ef78daf5fff980ec1121d..b1126470f6a17f63d72940199d15233f1d73dafd 100644 (file)
    02110-1301, USA. */
 
 #include <config.h>
+
 #include <stdlib.h>
-#include <libpspp/alloc.h>
-#include <libpspp/compiler.h>
+
 #include <data/dictionary.h>
 #include <data/file-handle-def.h>
-#include <language/data-io/file-handle.h>
+#include <data/procedure.h>
+#include <data/variable.h>
 #include <language/command.h>
+#include <language/data-io/file-handle.h>
 #include <language/lexer/lexer.h>
-#include <data/variable.h>
-/* (headers) */
+#include <language/lexer/variable-parser.h>
+#include <libpspp/alloc.h>
+#include <libpspp/compiler.h>
 
-#include <libpspp/debug-print.h>
+/* (headers) */
 
 struct cor_set
   {
@@ -56,8 +59,8 @@ cmd_correlations (void)
 /* (specification)
    "CORRELATIONS" (cor_):
      *variables=custom;
-     +missing=miss:!pairwise/listwise,
-             inc:include/exclude;
+     missing=miss:!pairwise/listwise,
+            inc:include/exclude;
      +print=tail:!twotail/onetail,
            sig:!sig/nosig;
      +format=fmt:!matrix/serial;
@@ -75,7 +78,7 @@ internal_cmd_correlations (void)
   cor_list = cor_last = NULL;
   matrix_file = NULL;
 
-  if (!parse_correlations (&cmd))
+  if (!parse_correlations (&cmd, NULL))
     return CMD_FAILURE;
   free_correlations (&cmd);
 
@@ -83,7 +86,7 @@ internal_cmd_correlations (void)
 }
 
 static int
-cor_custom_variables (struct cmd_correlations *cmd UNUSED)
+cor_custom_variables (struct cmd_correlations *cmd UNUSED, void *aux UNUSED)
 {
   struct variable **v1, **v2;
   size_t nv1, nv2;
@@ -91,18 +94,18 @@ cor_custom_variables (struct cmd_correlations *cmd UNUSED)
 
   /* Ensure that this is a VARIABLES subcommand. */
   if (!lex_match_id ("VARIABLES")
-      && (token != T_ID || dict_lookup_var (default_dict, tokid) != NULL)
+      && (token != T_ID || dict_lookup_var (dataset_dict (current_dataset), tokid) != NULL)
       && token != T_ALL)
     return 2;
   lex_match ('=');
 
-  if (!parse_variables (default_dict, &v1, &nv1,
+  if (!parse_variables (dataset_dict (current_dataset), &v1, &nv1,
                        PV_NO_DUPLICATE | PV_NUMERIC))
     return 0;
   
   if (lex_match (T_WITH))
     {
-      if (!parse_variables (default_dict, &v2, &nv2,
+      if (!parse_variables (dataset_dict (current_dataset), &v2, &nv2,
                            PV_NO_DUPLICATE | PV_NUMERIC))
        {
          free (v1);
@@ -130,7 +133,7 @@ cor_custom_variables (struct cmd_correlations *cmd UNUSED)
 }
 
 static int
-cor_custom_matrix (struct cmd_correlations *cmd UNUSED)
+cor_custom_matrix (struct cmd_correlations *cmd UNUSED, void *aux UNUSED)
 {
   if (!lex_force_match ('('))
     return 0;