/* PSPP - computes sample statistics.
Copyright (C) 1997-9, 2000 Free Software Foundation, Inc.
- Written by Ben Pfaff <blp@gnu.org>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
#ifndef VAL_LABS_H
#define VAL_LABS_H 1
+#include <stdbool.h>
#include <stddef.h>
-#include "variable.h"
+
+#include <data/value.h>
struct val_labs;
+struct variable;
struct val_lab
{
struct val_labs *val_labs_create (int width);
struct val_labs *val_labs_copy (const struct val_labs *);
-void val_labs_set_width (struct val_labs *, int new_width);
void val_labs_destroy (struct val_labs *);
void val_labs_clear (struct val_labs *);
size_t val_labs_count (const struct val_labs *);
-int val_labs_add (struct val_labs *, union value, const char *);
-int val_labs_replace (struct val_labs *, union value, const char *);
-int val_labs_remove (struct val_labs *, union value);
+bool val_labs_can_set_width (const struct val_labs *, int new_width);
+void val_labs_set_width (struct val_labs *, int new_width);
+
+bool val_labs_add (struct val_labs *, union value, const char *);
+void val_labs_replace (struct val_labs *, union value, const char *);
+bool val_labs_remove (struct val_labs *, union value);
char *val_labs_find (const struct val_labs *, union value);
struct val_labs_iterator;
struct val_labs_iterator **);
void val_labs_done (struct val_labs_iterator **);
-/* Return a string representing this value, in the form most
- appropriate from a human factors perspective.
- (IE: the label if it has one, otherwise the alpha/numeric )
-*/
-const char *value_to_string(const union value *, const struct variable *);
-
#endif /* value-labels.h */