bool RawRecord::isTerminatedRecordString(const std::string& candidateRecordString) { unsigned int terminatingSlash = findTerminatingSlash(candidateRecordString); bool hasTerminatingSlash = (terminatingSlash < candidateRecordString.size()); int numberOfQuotes = std::count(candidateRecordString.begin(), candidateRecordString.end(), RawConsts::quote); bool hasEvenNumberOfQuotes = (numberOfQuotes % 2) == 0; return hasTerminatingSlash && hasEvenNumberOfQuotes; }
bool RawRecord::isTerminatedRecordString(const std::string& candidateRecordString) { const auto terminatingSlash = findTerminatingSlash(candidateRecordString); bool hasTerminatingSlash = terminatingSlash < candidateRecordString.size(); return hasTerminatingSlash && even_quotes( candidateRecordString ); }
void RawRecord::setRecordString(const std::string& singleRecordString) { unsigned terminatingSlash = findTerminatingSlash(singleRecordString); m_sanitizedRecordString = singleRecordString.substr(0, terminatingSlash); boost::trim(m_sanitizedRecordString); }
static inline std::string trim_record( std::string&& str ) { std::string local( std::move( str ) ); local.resize( findTerminatingSlash( local ) ); return local; }