bool XmlParts::get()
{
  toks.clear();
  std::string tok;
  do
  {
    if(pToker->isFileEnd())
    {
      if(length() > 0)
        return true;
      return false;
    }
    tok = pToker->getTok();
    if(Verbose)
    {
      if(tok != "\n")
        std::cout << "\n--tok=" << tok << std::endl;
      else
        std::cout << "\n--tok=newline\n";
    }
    if(toks.size() > 0 && tok == "<")
    {
      pToker->putback('<');
      break;
    }
    if(tok != "\n")
      toks.push_back(tok);
  } while(!isTerminator(tok));
  return true;
}
bool SemiExp::get(bool clear)
{
  if(clear)
    toks.clear();
  std::string tok;
  do
  {
    if(pToker->isFileEnd())
    {
      if(length() > 0)
        return true;
      return false;
    }
    tok = pToker->getTok();
    if(Verbose)
    {
      if(tok != "\n")
        std::cout << "\n--tok=" << tok << std::endl;
      else
        std::cout << "\n--tok=newline\n";
    }
    if(tok != "\n" || doReturnNewLines)
      toks.push_back(tok);
  } while(!isTerminator(tok));
  trimFront();
  return true;
}
Esempio n. 3
0
    void RawKeyword::addRawRecordString(const std::string& partialRecordString) {
        m_partialRecordString += " " + partialRecordString;

        if (m_sizeType != Raw::FIXED && isTerminator( m_partialRecordString )) {
            if (m_sizeType == Raw::TABLE_COLLECTION) {
                m_currentNumTables += 1;
                if (m_currentNumTables == m_numTables) {
                    m_isFinished = true;
                    m_partialRecordString.clear();
                }
            } else {
                m_isFinished = true;
                m_partialRecordString.clear();
            }
        }

        if (!m_isFinished) {
            if (RawRecord::isTerminatedRecordString(partialRecordString)) {
                RawRecordPtr record(new RawRecord(m_partialRecordString, m_filename, m_name));
                m_records.push_back(record);
                m_partialRecordString.clear();
                
                if (m_sizeType == Raw::FIXED && (m_records.size() == m_fixedSize))
                    m_isFinished = true;
            }
        }
    }
Esempio n. 4
0
static inline bool isValueSeparator(char c)
{ return isTerminator(c) || c == ';'; }