26 #ifndef CSVSCANNER_H_INCLUDED
27 #define CSVSCANNER_H_INCLUDED
39 #define CSV_SCANNER_STRIP_WHITESPACE 0x0001
40 #define CSV_SCANNER_GREEDY 0x0002
42 typedef struct _CSVScannerOptions
64 const gchar *quotes_end);
void csv_scanner_options_copy(CSVScannerOptions *dst, CSVScannerOptions *src)
Definition: csv-scanner.c:113
CSVScannerDialect
Definition: csv-scanner.h:32
@ CSV_SCANNER_ESCAPE_NONE
Definition: csv-scanner.h:33
@ CSV_SCANNER_ESCAPE_BACKSLASH_WITH_SEQUENCES
Definition: csv-scanner.h:35
@ CSV_SCANNER_ESCAPE_BACKSLASH
Definition: csv-scanner.h:34
@ CSV_SCANNER_ESCAPE_DOUBLE_CHAR
Definition: csv-scanner.h:36
gboolean csv_scanner_options_validate(CSVScannerOptions *options)
Definition: csv-scanner.c:135
const gchar * csv_scanner_get_current_value(CSVScanner *pstate)
Definition: csv-scanner.c:519
gint csv_scanner_get_current_column(CSVScanner *self)
Definition: csv-scanner.c:487
gint csv_scanner_get_current_value_len(CSVScanner *self)
Definition: csv-scanner.c:525
gboolean csv_scanner_is_scan_complete(CSVScanner *pstate)
Definition: csv-scanner.c:493
void csv_scanner_init(CSVScanner *pstate, CSVScannerOptions *options, const gchar *input)
Definition: csv-scanner.c:503
void csv_scanner_options_set_flags(CSVScannerOptions *options, guint32 flags)
Definition: csv-scanner.c:37
gboolean csv_scanner_scan_next(CSVScanner *pstate)
Definition: csv-scanner.c:456
void csv_scanner_options_set_null_value(CSVScannerOptions *options, const gchar *null_value)
Definition: csv-scanner.c:100
void csv_scanner_options_set_expected_columns(CSVScannerOptions *options, gint expected_columns)
Definition: csv-scanner.c:107
void csv_scanner_options_set_delimiters(CSVScannerOptions *options, const gchar *delimiters)
Definition: csv-scanner.c:49
gchar * csv_scanner_dup_current_value(CSVScanner *self)
Definition: csv-scanner.c:531
void csv_scanner_options_set_quotes(CSVScannerOptions *options, const gchar *quotes)
Definition: csv-scanner.c:73
void csv_scanner_options_set_quote_pairs(CSVScannerOptions *options, const gchar *quote_pairs)
Definition: csv-scanner.c:79
void csv_scanner_options_set_dialect(CSVScannerOptions *options, CSVScannerDialect dialect)
Definition: csv-scanner.c:43
void csv_scanner_deinit(CSVScanner *pstate)
Definition: csv-scanner.c:514
void csv_scanner_options_clean(CSVScannerOptions *options)
Definition: csv-scanner.c:125
void csv_scanner_options_set_string_delimiters(CSVScannerOptions *options, GList *string_delimiters)
Definition: csv-scanner.c:56
void csv_scanner_options_set_quotes_start_and_end(CSVScannerOptions *options, const gchar *quotes_start, const gchar *quotes_end)
Definition: csv-scanner.c:63
Definition: csv-scanner.h:43
gint expected_columns
Definition: csv-scanner.h:50
CSVScannerDialect dialect
Definition: csv-scanner.h:49
guint32 flags
Definition: csv-scanner.h:51
gchar * quotes_end
Definition: csv-scanner.h:46
gchar * delimiters
Definition: csv-scanner.h:44
gchar * quotes_start
Definition: csv-scanner.h:45
gchar * null_value
Definition: csv-scanner.h:47
GList * string_delimiters
Definition: csv-scanner.h:48
Definition: csv-scanner.h:70
GString * current_value
Definition: csv-scanner.h:82
CSVScannerOptions * options
Definition: csv-scanner.h:71
@ CSV_STATE_GREEDY_COLUMN
Definition: csv-scanner.h:76
@ CSV_STATE_FINISH
Definition: csv-scanner.h:78
@ CSV_STATE_INITIAL
Definition: csv-scanner.h:74
@ CSV_STATE_COLUMNS
Definition: csv-scanner.h:75
@ CSV_STATE_PARTIAL_INPUT
Definition: csv-scanner.h:77
const gchar * src
Definition: csv-scanner.h:80
gint current_column
Definition: csv-scanner.h:81
gchar current_quote
Definition: csv-scanner.h:83