Пример #1
0
 /*
  * It is assumed that after a record is terminated, there is no quote marks
  * in the subsequent comment. This is in accordance with the Eclipse user
  * manual.
  * 
  * If a "non-complete" record string is supplied, an invalid_argument
  * exception is thrown.
  * 
  */
 RawRecord::RawRecord(const std::string& singleRecordString, const std::string& fileName, const std::string& keywordName) : m_fileName(fileName), m_keywordName(keywordName){
     if (isTerminatedRecordString(singleRecordString)) {
         setRecordString(singleRecordString);
         splitSingleRecordString();
     } else {
         throw std::invalid_argument("Input string is not a complete record string,"
                 " offending string: " + singleRecordString);
     }
 }
Пример #2
0
    RawRecord::RawRecord(std::string&& singleRecordString,
                         const std::string& fileName,
                         const std::string& keywordName) :
        m_sanitizedRecordString( trim_record( std::move( singleRecordString ) ) ),
        m_recordItems( splitSingleRecordString( m_sanitizedRecordString ) ),
        m_fileName(fileName),
        m_keywordName(keywordName)
    {

        if( !even_quotes( singleRecordString ) )
            throw std::invalid_argument(
                "Input string is not a complete record string, "
                "offending string: " + singleRecordString
            );
    }