MT Core (C++)
Core library for replacing C++ standard in project usage
Loading...
Searching...
No Matches
mtcore::csv::SliceParser::FieldParser Struct Reference

#include <slice.hpp>

Collaboration diagram for mtcore::csv::SliceParser::FieldParser:

Public Types

using IterElem = RowField
 

Public Member Functions

 FieldParser (const Slice< const char > &data, const Options &opts)
 
size_t start_pos () const
 
bool done () const
 
bool has_next_chunk () const
 
Optional< RowFieldnext ()
 

Public Attributes

Slice< const char > data
 
Options opts
 
Optional< ReadErrorerror = nullopt
 
struct { 
 
   u64   prevQuote = 0 
 
   u64   prevCr = 0 
 
   u64   prevQuoteEnds = 0 
 
   u64   prevFieldSeps = static_cast<u64>(1) << (chunkSize - 1) 
 
   u64   fieldSeparators = 0 
 
   u64   startChunk = 0 
 
   u64   startChunkPos = 0 
 
   u64   endChunk = 0 
 
   u64   nextChunk = 0 
 
   bool   fieldStart = true 
 
   bool   skip = false 
 
state = {} 
 

Detailed Description

Definition at line 31 of file csv/slice.hpp.

Member Typedef Documentation

◆ IterElem

Constructor & Destructor Documentation

◆ FieldParser()

mtcore::csv::SliceParser::FieldParser::FieldParser ( const Slice< const char > & data,
const Options & opts )

Member Function Documentation

◆ done()

bool mtcore::csv::SliceParser::FieldParser::done ( ) const
nodiscard

◆ has_next_chunk()

bool mtcore::csv::SliceParser::FieldParser::has_next_chunk ( ) const
nodiscard

◆ next()

Optional< RowField > mtcore::csv::SliceParser::FieldParser::next ( )

◆ start_pos()

size_t mtcore::csv::SliceParser::FieldParser::start_pos ( ) const
nodiscard

Member Data Documentation

◆ data

Slice<const char> mtcore::csv::SliceParser::FieldParser::data

Definition at line 34 of file csv/slice.hpp.

◆ endChunk

u64 mtcore::csv::SliceParser::FieldParser::endChunk = 0

Definition at line 45 of file csv/slice.hpp.

◆ error

Optional<ReadError> mtcore::csv::SliceParser::FieldParser::error = nullopt

Definition at line 36 of file csv/slice.hpp.

◆ fieldSeparators

u64 mtcore::csv::SliceParser::FieldParser::fieldSeparators = 0

Definition at line 42 of file csv/slice.hpp.

◆ fieldStart

bool mtcore::csv::SliceParser::FieldParser::fieldStart = true

Definition at line 47 of file csv/slice.hpp.

◆ nextChunk

u64 mtcore::csv::SliceParser::FieldParser::nextChunk = 0

Definition at line 46 of file csv/slice.hpp.

◆ opts

Options mtcore::csv::SliceParser::FieldParser::opts

Definition at line 35 of file csv/slice.hpp.

◆ prevCr

u64 mtcore::csv::SliceParser::FieldParser::prevCr = 0

Definition at line 39 of file csv/slice.hpp.

◆ prevFieldSeps

u64 mtcore::csv::SliceParser::FieldParser::prevFieldSeps = static_cast<u64>(1) << (chunkSize - 1)

Definition at line 41 of file csv/slice.hpp.

◆ prevQuote

u64 mtcore::csv::SliceParser::FieldParser::prevQuote = 0

Definition at line 38 of file csv/slice.hpp.

◆ prevQuoteEnds

u64 mtcore::csv::SliceParser::FieldParser::prevQuoteEnds = 0

Definition at line 40 of file csv/slice.hpp.

◆ skip

bool mtcore::csv::SliceParser::FieldParser::skip = false

Definition at line 48 of file csv/slice.hpp.

◆ startChunk

u64 mtcore::csv::SliceParser::FieldParser::startChunk = 0

Definition at line 43 of file csv/slice.hpp.

◆ startChunkPos

u64 mtcore::csv::SliceParser::FieldParser::startChunkPos = 0

Definition at line 44 of file csv/slice.hpp.

◆ [struct]

struct { ... } mtcore::csv::SliceParser::FieldParser::state

The documentation for this struct was generated from the following file: