casenumber casereader_get_case_cnt (struct casereader *);
casenumber casereader_count_cases (struct casereader *);
-size_t casereader_get_value_cnt (struct casereader *);
+const struct caseproto *casereader_get_proto (const struct casereader *);
void casereader_transfer (struct casereader *, struct casewriter *);
\f
casenumber initial_value);
struct casereader *
-casereader_create_translator (struct casereader *, size_t output_value_cnt,
+casereader_create_translator (struct casereader *,
+ const struct caseproto *output_proto,
struct ccase *(*translate) (struct ccase *,
void *aux),
bool (*destroy) (void *aux),
enum rank_error *err,
distinct_func *distinct_callback, void *aux);
+struct casereader *
+casereader_create_distinct (struct casereader *input,
+ const struct variable *key,
+ const struct variable *weight);
+
#endif /* data/casereader.h */