Vince's CSV Parser
Loading...
Searching...
No Matches
csv::internals::RawCSVData Struct Reference

A class for storing raw CSV data and associated metadata. More...

#include <raw_csv_data.hpp>

Public Member Functions

bool has_field_scalars () const noexcept
 

Public Attributes

std::shared_ptr< void > _data = nullptr
 
csv::string_view data = ""
 
internals::RawCSVFieldList fields
 
internals::CSVFieldScalarList field_scalars
 Optional parser-time scalar sidecar; empty unless eager classification is enabled.
 
internals::RawCSVQuoteArena quote_arena
 Parser-time sidecar bytes for fields whose quoted contents contained doubled quotes.
 
internals::lazy_shared_ptr< JsonConverterjson_converter
 Cached JSON converter for rows sharing this parsed backing storage.
 
internals::ColNamesPtr col_names = nullptr
 
internals::ParseFlagMap parse_flags
 
internals::WhitespaceMap ws_flags
 
bool has_ws_trimming = false
 True when at least one whitespace trim character is configured.
 

Detailed Description

A class for storing raw CSV data and associated metadata.

This structure is the bridge between the parser thread and the main thread. Parser populates fields, data, and parse_flags; main thread reads via CSVRow.

Definition at line 37 of file raw_csv_data.hpp.

Member Function Documentation

◆ has_field_scalars()

bool csv::internals::RawCSVData::has_field_scalars ( ) const
inlinenoexcept

Definition at line 61 of file raw_csv_data.hpp.

Member Data Documentation

◆ _data

std::shared_ptr<void> csv::internals::RawCSVData::_data = nullptr

Definition at line 38 of file raw_csv_data.hpp.

◆ col_names

internals::ColNamesPtr csv::internals::RawCSVData::col_names = nullptr

Definition at line 52 of file raw_csv_data.hpp.

◆ data

csv::string_view csv::internals::RawCSVData::data = ""

Definition at line 39 of file raw_csv_data.hpp.

◆ field_scalars

internals::CSVFieldScalarList csv::internals::RawCSVData::field_scalars

Optional parser-time scalar sidecar; empty unless eager classification is enabled.

Definition at line 44 of file raw_csv_data.hpp.

◆ fields

internals::RawCSVFieldList csv::internals::RawCSVData::fields

Definition at line 41 of file raw_csv_data.hpp.

◆ has_ws_trimming

bool csv::internals::RawCSVData::has_ws_trimming = false

True when at least one whitespace trim character is configured.

Used by get_field_impl() to skip trim work in the common no-trim case.

Definition at line 59 of file raw_csv_data.hpp.

◆ json_converter

internals::lazy_shared_ptr<JsonConverter> csv::internals::RawCSVData::json_converter
mutable

Cached JSON converter for rows sharing this parsed backing storage.

Definition at line 50 of file raw_csv_data.hpp.

◆ parse_flags

internals::ParseFlagMap csv::internals::RawCSVData::parse_flags

Definition at line 53 of file raw_csv_data.hpp.

◆ quote_arena

internals::RawCSVQuoteArena csv::internals::RawCSVData::quote_arena

Parser-time sidecar bytes for fields whose quoted contents contained doubled quotes.

Definition at line 47 of file raw_csv_data.hpp.

◆ ws_flags

internals::WhitespaceMap csv::internals::RawCSVData::ws_flags

Definition at line 54 of file raw_csv_data.hpp.


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