Ejemplo n.º 1
0
void cParser::onEqual(void)
{
    std::string name = parseVarName();
    m_curVariable.clear();
    m_variable.clear();
    if (error())
    {
        return;
    }
    
    m_pCurNode->write(name, getAStr());
}
Ejemplo n.º 2
0
void cParser::onReturn(void)
{
    std::string name = parseVarName();
    m_curVariable.clear();
    m_variable.clear();
    if (error())
    {
        setError(0);
        ++m_curLine;
        return;
    }
    else
    {
        setVar(name);
        ++m_curLine;
    }
}
Ejemplo n.º 3
0
void cParser::onLBraket(void)
{
    std::string name = parseVarName();
    m_curVariable.clear();
    m_variable.clear();
    if (error())
    {
        return;
    }

    LZDataPtr node = new lzd(name);
    m_pCurNode->addChild(node);
    cParser parser(m_strText, node);
    parser.parse();
    m_strText = parser.getText();
    m_curLine += parser.getLines();
}
Ejemplo n.º 4
0
VariableList_t* PHPVariableParser::parseArray(PHPVariable* var)
{
  int size;
  VariableList_t* list = new VariableList_t;

  QRegExp rx;
  rx.setPattern("a:(\\d*):\\{");
  if(rx.search(m_raw, m_index) == -1) return list;

  size    =  rx.cap(1).toInt();
  m_index += rx.matchedLength();

  for(int i = 0; i < size; i++) {
    list->append(parseVarName(var));
  }

  m_index++; //eats the '}'
  return list;
}
Ejemplo n.º 5
0
VariableList_t* PHPVariableParser::parseObjectMembers(PHPVariable* parent)
{
  //O:6:"Classe":3:{s:6:"membro";N;s:4:"mem2";N;s:4:"priv";N;}
  int size;
  VariableList_t* list = new VariableList_t;

  QRegExp rx;
  rx.setPattern("(\\d*):\\{");
  if(rx.search(m_raw, m_index) == -1) return list;

  size    =  rx.cap(1).toInt();
  m_index += rx.matchedLength();

  for(int i = 0; i < size; i++) {
    list->append(parseVarName(parent));
  }

  m_index++; //eats the '}'
  return list;
}