02111-1307, USA. */
#include <config.h>
+#include "pfm.h"
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include "gmp.h"
#include "hash.h"
#include "magic.h"
-#include "pfm.h"
#include "str.h"
#include "value-labels.h"
#include "var.h"
{
int i;
- ext->nvars = dict->nvar;
- ext->vars = xmalloc (sizeof *ext->vars * dict->nvar);
- for (i = 0; i < dict->nvar; i++)
- ext->vars[i] = dict->var[i]->width;
+ ext->nvars = dict_get_var_cnt (dict);
+ ext->vars = xmalloc (sizeof *ext->vars * ext->nvars);
+ for (i = 0; i < ext->nvars; i++)
+ ext->vars[i] = dict_get_var (dict, i)->width;
}
/* Write the file header. */
/* Write NBYTES starting at BUF to the portable file represented by
H. Break lines properly every 80 characters. */
static int
-bufwrite (struct file_handle *h, const void *buf, size_t nbytes)
+bufwrite (struct file_handle *h, const void *buf_, size_t nbytes)
{
+ const char *buf = buf_;
struct pfm_fhuser_ext *ext = h->ext;
assert (buf != NULL);
goto lossage;
nbytes -= n;
- *((char **) &buf) += n;
+ buf += n;
ext->lc = 0;
}
{
int i;
- if (!bufwrite (h, "4", 1) || !write_int (h, dict->nvar)
+ if (!bufwrite (h, "4", 1) || !write_int (h, dict_get_var_cnt (dict))
|| !write_int (h, 161))
return 0;
- for (i = 0; i < dict->nvar; i++)
+ for (i = 0; i < dict_get_var_cnt (dict); i++)
{
static const char *miss_types[MISSING_COUNT] =
{
const char *m;
int j;
- struct variable *v = dict->var[i];
+ struct variable *v = dict_get_var (dict, i);
if (!bufwrite (h, "7", 1) || !write_int (h, v->width)
|| !write_string (h, v->name)
{
int i;
- for (i = 0; i < dict->nvar; i++)
+ for (i = 0; i < dict_get_var_cnt (dict); i++)
{
struct val_labs_iterator *j;
- struct variable *v = dict->var[i];
+ struct variable *v = dict_get_var (dict, i);
struct val_lab *vl;
if (!val_labs_count (v->val_labs))