本文整理汇总了C++中Automate::decalageTerminal方法的典型用法代码示例。如果您正苦于以下问题:C++ Automate::decalageTerminal方法的具体用法?C++ Automate::decalageTerminal怎么用?C++ Automate::decalageTerminal使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Automate
的用法示例。
在下文中一共展示了Automate::decalageTerminal方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: throw
bool E34::transition(Automate& automate, Symbole* symbole) throw(std::pair<int, string>) {
switch (symbole->getType())
{
case(VG) :
automate.decalageTerminal(symbole, new E35);
return true;
case(PVG) :
automate.decalageTerminal(symbole, new E39);
return true;
case(ID) :
Symbole* symboleAnticipe = new Symbole();
symboleAnticipe->setType(VG);
automate.decalageAnticipe(symboleAnticipe, new E35);
std::pair<int, string> p = std::make_pair(0, "Erreur syntaxique symbole \",\" attendu");
throw(p);
return true;
}
Symbole* symboleAnticipe = new Symbole();
symboleAnticipe->setType(PVG);
automate.decalageAnticipe(symboleAnticipe, new E39);
std::pair<int, string> p = std::make_pair(0, "Erreur syntaxique symbole \";\" attendu");
throw(p);
return true;
}
示例2: throw
bool E21::transition(Automate& automate, Symbole* symbole) throw(std::pair<int, string>) {
switch (symbole->getType())
{
case(ID) :
automate.decalageTerminal(symbole, new E19);
return true;
case(NB) :
automate.decalageTerminal(symbole, new E20);
return true;
case(PARG) :
automate.decalageTerminal(symbole, new E21);
return true;
case(E) :
automate.decalageNonTerminal(symbole, new E23);
return true;
case(T) :
automate.decalageNonTerminal(symbole, new E22);
return true;
case(F) :
automate.decalageNonTerminal(symbole, new E18);
return true;
}
std::pair<int, string> p = std::make_pair(1, "Erreur de syntaxe (attendu : \"(\", nombre, id, ou expression).");
throw(p);
return false;
}
示例3: throw
bool E28::transition(Automate& automate, Symbole* symbole) throw(std::pair<int, string>) {
switch (symbole->getType())
{
case(PLUS) :
automate.decalageTerminal(symbole, new E14);
return true;
case(MOINS) :
automate.decalageTerminal(symbole, new E14);
return true;
case(PVG) :
automate.decalageTerminal(symbole, new E29);
return true;
}
std::pair<int, string> p = std::make_pair(1, "Erreur de syntaxe (attendu : \"+\", \"-\" ou \";\").");
throw(p);
return false;
}
示例4: throw
bool E32::transition(Automate& automate, Symbole *symbole) throw(std::pair<int, string>) {
switch (symbole->getType())
{
case(NB) :
automate.decalageTerminal(symbole, new E33);
return true;
}
std::pair<int, string> p = std::make_pair(1, "Erreur de syntaxe nombre attendu");
throw(p);
return false;
}