Added casefilter structure to assist with missing values. Changed T-TEST
[pspp-builds.git] / src / data / storage-stream.c
index a90a8aba1122d2575b5977a0bec779a889117bfc..912a10398cb9d5bee1e584907d6ee0368f0db65d 100644 (file)
 
 #include <data/storage-stream.h>
 
+#include <assert.h>
 #include <stdlib.h>
 
 #include <data/case-sink.h>
 #include <data/case-source.h>
 #include <data/case.h>
 #include <data/casefile.h> 
+#include <data/fastfile.h> 
 
 #include "xalloc.h"
 
@@ -45,7 +47,7 @@ storage_sink_open (struct case_sink *sink)
   struct storage_stream_info *info;
 
   sink->aux = info = xmalloc (sizeof *info);
-  info->casefile = casefile_create (sink->value_cnt);
+  info->casefile = fastfile_create (sink->value_cnt);
 }
 
 /* Destroys storage stream represented by INFO. */
@@ -121,7 +123,7 @@ storage_source_read (struct case_source *source,
   struct casereader *reader;
   bool ok = true;
 
-  for (reader = casefile_get_reader (info->casefile);
+  for (reader = casefile_get_reader (info->casefile, NULL);
        ok && casereader_read (reader, &casefile_case);
        case_destroy (&casefile_case))
     {
@@ -172,7 +174,7 @@ storage_source_decapsulate (struct case_source *source)
   assert (source->class == &storage_source_class);
   casefile = info->casefile;
   info->casefile = NULL;
-  destroy_storage_stream_info (info);
+  free_case_source (source);
   return casefile;
 }