40 explicit operator bool()
const
61 static constexpr
unsigned end{UINT32_MAX};
69 if(reader && reader->
next()) {
84 return reader == other.reader && index == other.index;
Class to read a CSV file.
Definition: CsvReader/src/include/CSV/Reader.h:35
bool next()
Seek to next record.
Definition: CsvReader/src/include/CSV/Reader.h:78
const CStringArray & getRow() const
Get current row.
Definition: Parser.h:162
void reset()
Reset reader to start of CSV file.
Definition: CsvReader/src/include/CSV/Reader.h:69
Reader(IDataSourceStream *source, const Options &options, const CStringArray &headings=nullptr)
Construct a CSV reader.
static constexpr unsigned end
Definition: Table.h:61
bool operator!=(const Iterator &other) const
Definition: Table.h:87
bool operator==(const Iterator &other) const
Definition: Table.h:82
Record operator*() const
Definition: Table.h:77
Iterator & operator++()
Definition: Table.h:67
Iterator(Reader *reader, unsigned index)
Definition: Table.h:63
Class template for accessing CSV file as set of records.
Definition: Table.h:56
Iterator begin()
Definition: Table.h:107
Iterator end()
Definition: Table.h:113
Record next()
Fetch next record.
Definition: Table.h:102
Class to manage a double null-terminated list of strings, such as "one\0two\0three\0".
Definition: CStringArray.h:22
Base class for interpreting a record (line) in a CSV file.
Definition: Table.h:29
CStringArray row
Definition: Table.h:30
Record()
Definition: Table.h:32
Record(const CStringArray &row)
Definition: Table.h:36
const char * operator[](unsigned index) const
Definition: Table.h:45