/* PSPP - a program for statistical analysis.
- Copyright (C) 2008 Free Software Foundation, Inc.
+ Copyright (C) 2008, 2009 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
{
struct subcase_field *fields;
size_t n_fields;
- size_t n_values;
+
+ struct caseproto *proto; /* Created lazily. */
};
void subcase_init_empty (struct subcase *);
const struct variable *const *, size_t n_vars);
void subcase_init_var (struct subcase *,
const struct variable *, enum subcase_direction);
+void subcase_init (struct subcase *, int index, int width,
+ enum subcase_direction);
+
void subcase_clone (struct subcase *, const struct subcase *);
void subcase_clear (struct subcase *);
void subcase_destroy (struct subcase *);
+bool subcase_add (struct subcase *sc, int index, int width,
+ enum subcase_direction direction);
+
bool subcase_add_var (struct subcase *, const struct variable *,
enum subcase_direction);
+const struct caseproto *subcase_get_proto (const struct subcase *);
+
static inline bool subcase_is_empty (const struct subcase *);
static inline size_t subcase_get_n_fields (const struct subcase *);
-static inline size_t subcase_get_n_values (const struct subcase *);
static inline enum subcase_direction subcase_get_direction (
const struct subcase *, size_t idx);
return sc->n_fields;
}
-static inline size_t
-subcase_get_n_values (const struct subcase *sc)
-{
- return sc->n_values;
-}
-
#endif /* data/subcase.h */