/* PSPP - computes sample statistics.
Copyright (C) 1997-9, 2000 Free Software Foundation, Inc.
- Written by Ben Pfaff <blp@gnu.org>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
#include <data/settings.h>
#include <data/variable.h>
#include <data/storage-stream.h>
-#include <language/expressions/public.h>
#include <libpspp/alloc.h>
#include <libpspp/array.h>
#include <libpspp/assertion.h>
#include <libpspp/misc.h>
#include <libpspp/str.h>
+#include "minmax.h"
+
#include "gettext.h"
#define _(msgid) gettext (msgid)
sort_to_casefile_callback (const struct casefile *cf, void *cb_data_)
{
struct sort_to_casefile_cb_data *cb_data = cb_data_;
- cb_data->output = sort_execute (casefile_get_reader (cf), cb_data->criteria);
+ cb_data->output = sort_execute (casefile_get_reader (cf, NULL), cb_data->criteria);
return cb_data->output != NULL;
}
if (c->width == 0)
{
- double af = case_num (a, c->fv);
- double bf = case_num (b, c->fv);
+ double af = case_num_idx (a, c->fv);
+ double bf = case_num_idx (b, c->fv);
result = af < bf ? -1 : af > bf;
}
else
- result = memcmp (case_str (a, c->fv), case_str (b, c->fv), c->width);
+ result = memcmp (case_str_idx (a, c->fv),
+ case_str_idx (b, c->fv), c->width);
if (result != 0)
return c->dir == SRT_ASCEND ? result : -result;
{
while (xsrt->run_cnt > 1)
{
- int order = min (MAX_MERGE_ORDER, xsrt->run_cnt);
+ int order = MIN (MAX_MERGE_ORDER, xsrt->run_cnt);
int idx = choose_merge (xsrt->runs, xsrt->run_cnt, order);
xsrt->runs[idx] = merge_once (xsrt, xsrt->runs + idx, order);
remove_range (xsrt->runs, xsrt->run_cnt, sizeof *xsrt->runs,