From 586e71f68f435d15b2046caee31b9527cf81a129 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Sun, 30 Jan 2022 22:10:12 -0800 Subject: [PATCH] ctables: Minor refactoring. --- src/language/stats/ctables.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/language/stats/ctables.c b/src/language/stats/ctables.c index 4a0787dd21..d6b5a0ca0c 100644 --- a/src/language/stats/ctables.c +++ b/src/language/stats/ctables.c @@ -2649,15 +2649,9 @@ recurse_subtotals (struct ctables_table *t, const struct ccase *c, static void ctables_cell_insert (struct ctables_table *t, const struct ccase *c, - size_t ir, size_t ic, size_t il, + size_t ix[PIVOT_N_AXES], double d_weight, double e_weight) { - size_t ix[PIVOT_N_AXES] = { - [PIVOT_AXIS_ROW] = ir, - [PIVOT_AXIS_COLUMN] = ic, - [PIVOT_AXIS_LAYER] = il, - }; - const struct ctables_category *cats[PIVOT_N_AXES][10]; for (enum pivot_axis_type a = 0; a < PIVOT_N_AXES; a++) { @@ -2924,6 +2918,8 @@ ctables_table_output (struct ctables *ct, struct ctables_table *t) struct pivot_category *parent = k ? groups[k - 1] : d[a]->root; if (level->type == CTL_SUMMARY) { + assert (k == n_levels - 1); + const struct ctables_summary_spec_set *specs = &t->summary_specs; for (size_t m = 0; m < specs->n; m++) { @@ -3339,7 +3335,15 @@ ctables_execute (struct dataset *ds, struct ctables *ct) for (size_t ir = 0; ir < t->stacks[PIVOT_AXIS_ROW].n; ir++) for (size_t ic = 0; ic < t->stacks[PIVOT_AXIS_COLUMN].n; ic++) for (size_t il = 0; il < t->stacks[PIVOT_AXIS_LAYER].n; il++) - ctables_cell_insert (t, c, ir, ic, il, d_weight, e_weight); + { + size_t ix[PIVOT_N_AXES] = { + [PIVOT_AXIS_ROW] = ir, + [PIVOT_AXIS_COLUMN] = ic, + [PIVOT_AXIS_LAYER] = il, + }; + + ctables_cell_insert (t, c, ix, d_weight, e_weight); + } for (enum pivot_axis_type a = 0; a < PIVOT_N_AXES; a++) if (t->label_axis[a] != a) -- 2.30.2