Orcus
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
orcus::csv_parser< HandlerT > Class Template Reference

#include <csv_parser.hpp>

Inheritance diagram for orcus::csv_parser< HandlerT >:
orcus::csv::parser_base orcus::parser_base

Public Types

typedef HandlerT handler_type
 

Public Member Functions

 csv_parser (std::string_view content, handler_type &hdl, const csv::parser_config &config)
 
void parse ()
 

Additional Inherited Members

- Protected Types inherited from orcus::parser_base
using numeric_parser_type = std::function< const char *(const char *, const char *, double &)>
 
- Protected Member Functions inherited from orcus::csv::parser_base
 parser_base (std::string_view content, const parser_config &config)
 
bool is_blank (char c) const
 
bool is_delim (char c) const
 
bool is_text_qualifier (char c) const
 
void skip_blanks ()
 
- Protected Member Functions inherited from orcus::parser_base
 parser_base (const char *p, size_t n)
 
void set_numeric_parser (const numeric_parser_type &func)
 
bool has_char () const
 
bool has_next () const
 
void next (size_t inc=1)
 
void prev (size_t dec=1)
 
char cur_char () const
 
char peek_char (std::size_t offset=1) const
 
std::string_view peek_chars (std::size_t length) const
 
void skip_bom ()
 
void skip (std::string_view chars_to_skip)
 
void skip_space_and_control ()
 
bool parse_expected (std::string_view expected)
 
double parse_double ()
 
size_t remaining_size () const
 
size_t available_size () const
 
std::ptrdiff_t offset () const
 
- Protected Attributes inherited from orcus::csv::parser_base
const csv::parser_configm_config
 
cell_buffer m_cell_buf
 
- Protected Attributes inherited from orcus::parser_base
const char *const mp_begin
 
const char * mp_char
 
const char * mp_end
 

Detailed Description

template<typename HandlerT>
class orcus::csv_parser< HandlerT >

Parser for CSV documents.

Template Parameters
HandlerTHanlder type with member functions for event callbacks. Refer to csv_handler.