X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdictionary.h;h=d02877141cab080ca53e87c48979cc5d72eda187;hb=998c6bac5f1d781505591ac6b3e78df25e566282;hp=e923d52dc252d3a25debe74007e083a463c36f75;hpb=c9e2bf6cb988f8c00d89ccf191a28388cccbd868;p=pspp diff --git a/src/dictionary.h b/src/dictionary.h index e923d52dc2..d02877141c 100644 --- a/src/dictionary.h +++ b/src/dictionary.h @@ -20,6 +20,7 @@ #ifndef DICTIONARY_H #define DICTIONARY_H +#include #include /* Dictionary. */ @@ -50,7 +51,7 @@ struct variable *dict_clone_var_assert (struct dictionary *, struct variable *dict_lookup_var (const struct dictionary *, const char *); struct variable *dict_lookup_var_assert (const struct dictionary *, const char *); -int dict_contains_var (const struct dictionary *, const struct variable *); +bool dict_contains_var (const struct dictionary *, const struct variable *); void dict_delete_var (struct dictionary *, struct variable *); void dict_delete_vars (struct dictionary *, struct variable *const *, size_t count); @@ -60,9 +61,9 @@ void dict_reorder_var (struct dictionary *d, struct variable *v, void dict_reorder_vars (struct dictionary *, struct variable *const *, size_t count); void dict_rename_var (struct dictionary *, struct variable *, const char *); -int dict_rename_vars (struct dictionary *, - struct variable **, char **new_names, - size_t count, char **err_name); +bool dict_rename_vars (struct dictionary *, + struct variable **, char **new_names, + size_t count, char **err_name); struct ccase; struct variable *dict_get_weight (const struct dictionary *); @@ -80,10 +81,14 @@ int dict_get_next_value_idx (const struct dictionary *); size_t dict_get_case_size (const struct dictionary *); void dict_compact_values (struct dictionary *); -void dict_compact_case (const struct dictionary *, - struct ccase *, const struct ccase *); size_t dict_get_compacted_value_cnt (const struct dictionary *); int *dict_get_compacted_idx_to_fv (const struct dictionary *); +bool dict_needs_compaction (const struct dictionary *); + +struct dict_compactor *dict_make_compactor (const struct dictionary *); +void dict_compactor_compact (const struct dict_compactor *, + struct ccase *, const struct ccase *); +void dict_compactor_destroy (struct dict_compactor *); struct variable *const *dict_get_split_vars (const struct dictionary *); size_t dict_get_split_cnt (const struct dictionary *); @@ -96,9 +101,9 @@ void dict_set_label (struct dictionary *, const char *); const char *dict_get_documents (const struct dictionary *); void dict_set_documents (struct dictionary *, const char *); -int dict_create_vector (struct dictionary *, - const char *name, - struct variable **, size_t cnt); +bool dict_create_vector (struct dictionary *, + const char *name, + struct variable **, size_t cnt); const struct vector *dict_get_vector (const struct dictionary *, size_t idx); size_t dict_get_vector_cnt (const struct dictionary *);