Rewrite system file reader code, to clean up and improve.
[pspp-builds.git] / src / data / dictionary.h
index d02877141cab080ca53e87c48979cc5d72eda187..37eb1192ba7dc3adede0c31d9d29bade91bc0cd9 100644 (file)
@@ -55,6 +55,8 @@ 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);
+void dict_delete_consecutive_vars (struct dictionary *d,
+                                   size_t idx, size_t count);
 void dict_delete_scratch_vars (struct dictionary *);
 void dict_reorder_var (struct dictionary *d, struct variable *v,
                        size_t new_index);
@@ -68,22 +70,23 @@ bool dict_rename_vars (struct dictionary *,
 struct ccase;
 struct variable *dict_get_weight (const struct dictionary *);
 double dict_get_case_weight (const struct dictionary *, 
-                            const struct ccase *, int *);
+                            const struct ccase *, bool *);
 void dict_set_weight (struct dictionary *, struct variable *);
 
 struct variable *dict_get_filter (const struct dictionary *);
 void dict_set_filter (struct dictionary *, struct variable *);
 
-int dict_get_case_limit (const struct dictionary *);
-void dict_set_case_limit (struct dictionary *, int);
+size_t dict_get_case_limit (const struct dictionary *);
+void dict_set_case_limit (struct dictionary *, size_t);
 
 int dict_get_next_value_idx (const struct dictionary *);
 size_t dict_get_case_size (const struct dictionary *);
 
 void dict_compact_values (struct dictionary *);
 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 *);
+int *dict_get_compacted_dict_index_to_case_index (const struct dictionary *);
+bool dict_compacting_would_shrink (const struct dictionary *);
+bool dict_compacting_would_change (const struct dictionary *);
 
 struct dict_compactor *dict_make_compactor (const struct dictionary *);
 void dict_compactor_compact (const struct dict_compactor *,