/* Creates and returns a casegrouper that reads data from READER
and breaks it into contiguous groups of cases that have equal
/* Creates and returns a casegrouper that reads data from READER
and breaks it into contiguous groups of cases that have equal
then all the cases will be put in a single group.
Takes ownerhip of READER. */
struct casegrouper *
casegrouper_create_vars (struct casereader *reader,
const struct variable *const *vars,
then all the cases will be put in a single group.
Takes ownerhip of READER. */
struct casegrouper *
casegrouper_create_vars (struct casereader *reader,
const struct variable *const *vars,
}
else
return casegrouper_create_func (reader, NULL, NULL, NULL);
}
else
return casegrouper_create_func (reader, NULL, NULL, NULL);
{
return casegrouper_create_vars (reader,
dict_get_split_vars (dict),
{
return casegrouper_create_vars (reader,
dict_get_split_vars (dict),
casegrouper_create_subcase (struct casereader *reader,
const struct subcase *sc)
{
casegrouper_create_subcase (struct casereader *reader,
const struct subcase *sc)
{
{
struct subcase *sc_copy = xmalloc (sizeof *sc);
subcase_clone (sc_copy, sc);
return casegrouper_create_func (reader, casegrouper_vars_same_group,
{
struct subcase *sc_copy = xmalloc (sizeof *sc);
subcase_clone (sc_copy, sc);
return casegrouper_create_func (reader, casegrouper_vars_same_group,
}
else
return casegrouper_create_func (reader, NULL, NULL, NULL);
}
else
return casegrouper_create_func (reader, NULL, NULL, NULL);