/* PSPP - a program for statistical analysis.
- Copyright (C) 2007 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2011, 2016 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
/* Abstraction of a DATA LIST or GET DATA TYPE=TXT data parser. */
#include <stdbool.h>
-#include <data/case.h>
-#include <libpspp/str.h>
+#include "data/case.h"
+#include "libpspp/str.h"
struct dataset;
struct dfm_reader;
};
/* Creating and configuring any parser. */
-struct data_parser *data_parser_create (void);
+struct data_parser *data_parser_create (const struct dictionary *dict);
void data_parser_destroy (struct data_parser *);
enum data_parser_type data_parser_get_type (const struct data_parser *);
void data_parser_set_type (struct data_parser *, enum data_parser_type);
void data_parser_set_skip (struct data_parser *, int initial_records_to_skip);
-void data_parser_set_case_limit (struct data_parser *, casenumber max_cases);
-void data_parser_set_case_percent (struct data_parser *, int case_percent);
/* For configuring delimited parsers only. */
bool data_parser_get_span (const struct data_parser *);
void data_parser_set_empty_line_has_field (struct data_parser *,
bool empty_line_has_field);
+void data_parser_set_warn_missing_fields (struct data_parser *parser,
+ bool warn_missing_fields);
+
void data_parser_set_quotes (struct data_parser *, struct substring);
void data_parser_set_quote_escape (struct data_parser *, bool escape);
void data_parser_set_soft_delimiters (struct data_parser *, struct substring);
/* Uses for a configured parser. */
void data_parser_output_description (struct data_parser *,
const struct file_handle *);
+struct casereader;
void data_parser_make_active_file (struct data_parser *, struct dataset *,
- struct dfm_reader *, struct dictionary *);
+ struct dfm_reader *, struct dictionary *,
+ struct casereader* (*func)(struct casereader *,
+ const struct dictionary *,
+ void *),
+ void *ud);
+
#endif /* language/data-io/data-parser.h */