TokenWriter module

Module contents

class TokenWriter

Write tokens to a stream.

Supply your tokens in a form that can be converted to strings. Set your record delimiter (usually newline or similar) and your field delimiter (tab, comma or similar). Done.

Public Types

typedef string_type::value_type char_type
typedef boost::basic_regex<char_type> regex_type

Public Functions

TokenWriter()
TokenWriter(std::ostream &_output)
~TokenWriter()
TokenWriter(TokenWriter const &other)
TokenWriter &operator=(TokenWriter const &other)
bool operator==(TokenWriter const &other) const
bool operator!=(TokenWriter const &other) const
void set_output(std::ostream &out)
std::ostream &output() const
void set_field_delimiter(string_type const &delimiter)
string_type field_delimiter() const
void set_record_delimiter(string_type const &end_of_line)
string_type record_delimiter() const
void set_quote_character(string_type const &quotes)
string_type quote_character() const
template<typename token_iter_t>
void write_record(token_iter_t begin, token_iter_t end)

Private Functions

string_type escape_delimiters(string_type const &string_to_escape) const
void rebuild_delimiter_regex()
string_type escape_characters_for_set(string_type const &in_string)

Private Members

string_type FieldDelimiter
std::ostream *OutputStream
string_type QuoteCharacter
string_type RecordDelimiter
regex_type DelimiterRegex