Vince's CSV Parser
csv::internals::CSVFieldList Class Reference

A class used for efficiently storing RawCSVField objects and expanding as necessary. More...

#include <csv_row.hpp>

Public Member Functions

 CSVFieldList (size_t single_buffer_capacity=(size_t)(internals::PAGE_SIZE/sizeof(RawCSVField)))
 Construct a CSVFieldList which allocates blocks of a certain size.
 
 CSVFieldList (const CSVFieldList &other)=delete
 
 CSVFieldList (CSVFieldList &&other)
 
template<class... Args>
void emplace_back (Args &&... args)
 
size_t size () const noexcept
 
RawCSVFieldoperator[] (size_t n) const
 

Detailed Description

A class used for efficiently storing RawCSVField objects and expanding as necessary.

Implementation
This data structure stores RawCSVField in continguous blocks. When more capacity is needed, a new block is allocated, but previous data stays put.
Thread Safety
This class may be safely read from multiple threads and written to from one, as long as the writing thread does not actively touch fields which are being read.

Definition at line 62 of file csv_row.hpp.


The documentation for this class was generated from the following files: