This commit is contained in:
parent
48629e2f3d
commit
e98f64c419
20 changed files with 1052 additions and 637 deletions
|
@ -9,12 +9,13 @@ ParserWizard generated YACC file.
|
|||
Date: 07 December 2000
|
||||
****************************************************************************/
|
||||
|
||||
#include "function.h"
|
||||
#include "lexer.h"
|
||||
#include "codegen.h"
|
||||
|
||||
|
||||
|
||||
#line 18 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 19 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
// repeated because of possible precompiled header
|
||||
#include <cyacc.h>
|
||||
|
||||
|
@ -26,11 +27,11 @@ Date: 07 December 2000
|
|||
YYPARSENAME::YYPARSENAME()
|
||||
{
|
||||
yytables();
|
||||
#line 38 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 43 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
|
||||
// place any extra initialisation code here
|
||||
|
||||
#line 34 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 35 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
|
||||
#ifndef YYSTYPE
|
||||
|
@ -75,9 +76,9 @@ void YYPARSENAME::yyaction(int action)
|
|||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
#endif
|
||||
{
|
||||
#line 92 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 102 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
s_baseTreeNode=yyattribute(1 - 1).treenode;
|
||||
#line 81 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 82 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -88,17 +89,17 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 3);
|
||||
#endif
|
||||
{
|
||||
#line 96 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 106 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(STMT_LIST,yyattribute(1 - 2).treenode,yyattribute(2 - 2).treenode);
|
||||
#line 94 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 95 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{
|
||||
#line 97 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 107 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(EMPTY_STMT);
|
||||
#line 102 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 103 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
|
@ -108,9 +109,9 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
#endif
|
||||
{
|
||||
#line 101 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 111 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(EMPTY_STMT);
|
||||
#line 114 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 115 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -121,9 +122,9 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 3);
|
||||
#endif
|
||||
{
|
||||
#line 102 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 112 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(STOP_STMT);
|
||||
#line 127 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 128 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -134,9 +135,9 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 3);
|
||||
#endif
|
||||
{
|
||||
#line 103 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 113 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(PAUSE_STMT);
|
||||
#line 140 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 141 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -147,9 +148,9 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 6);
|
||||
#endif
|
||||
{
|
||||
#line 104 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 114 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(PRINT_STMT,yyattribute(3 - 5).treenode);
|
||||
#line 153 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 154 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -160,9 +161,9 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 3);
|
||||
#endif
|
||||
{
|
||||
#line 105 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 115 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=yyattribute(1 - 2).treenode;
|
||||
#line 166 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 167 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -173,9 +174,9 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 6);
|
||||
#endif
|
||||
{
|
||||
#line 106 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 116 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(IF_STMT,yyattribute(3 - 5).treenode,yyattribute(5 - 5).treenode);
|
||||
#line 179 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 180 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -186,9 +187,9 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 8);
|
||||
#endif
|
||||
{
|
||||
#line 107 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 117 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(IFELSE_STMT,yyattribute(3 - 7).treenode,yyattribute(5 - 7).treenode,yyattribute(7 - 7).treenode);
|
||||
#line 192 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 193 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -199,22 +200,22 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 4);
|
||||
#endif
|
||||
{
|
||||
#line 108 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 118 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(STMT_LIST,yyattribute(2 - 3).treenode);
|
||||
#line 205 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 206 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 11:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[4];
|
||||
yyinitdebug((void YYFAR**)yya, 4);
|
||||
YYSTYPE YYFAR* yya[3];
|
||||
yyinitdebug((void YYFAR**)yya, 3);
|
||||
#endif
|
||||
{
|
||||
#line 113 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(ASSIGN_EXPR,yyattribute(1 - 3).treenode,yyattribute(3 - 3).treenode);
|
||||
#line 218 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 119 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(STMT_LIST,yyattribute(1 - 2).treenode,new CTreeNode(POP_STMT));
|
||||
#line 219 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -225,22 +226,22 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 4);
|
||||
#endif
|
||||
{
|
||||
#line 118 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=yyattribute(2 - 3).treenode;
|
||||
#line 231 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 124 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(ASSIGN_EXPR,yyattribute(1 - 3).treenode,yyattribute(3 - 3).treenode);
|
||||
#line 232 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 13:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[2];
|
||||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
YYSTYPE YYFAR* yya[4];
|
||||
yyinitdebug((void YYFAR**)yya, 4);
|
||||
#endif
|
||||
{
|
||||
#line 119 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=yyattribute(1 - 1).treenode;
|
||||
#line 244 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 129 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=yyattribute(2 - 3).treenode;
|
||||
#line 245 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -251,22 +252,22 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
#endif
|
||||
{
|
||||
#line 120 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 130 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=yyattribute(1 - 1).treenode;
|
||||
#line 257 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 258 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 15:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[4];
|
||||
yyinitdebug((void YYFAR**)yya, 4);
|
||||
YYSTYPE YYFAR* yya[2];
|
||||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
#endif
|
||||
{
|
||||
#line 124 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(EQUAL_EXPR,yyattribute(1 - 3).treenode,yyattribute(3 - 3).treenode);
|
||||
#line 270 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 131 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=yyattribute(1 - 1).treenode;
|
||||
#line 271 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -277,22 +278,22 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 4);
|
||||
#endif
|
||||
{
|
||||
#line 128 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(NOTEQUAL_EXPR,yyattribute(1 - 3).treenode,yyattribute(3 - 3).treenode);
|
||||
#line 283 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 135 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(EQUAL_EXPR,yyattribute(1 - 3).treenode,yyattribute(3 - 3).treenode);
|
||||
#line 284 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 17:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[2];
|
||||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
YYSTYPE YYFAR* yya[4];
|
||||
yyinitdebug((void YYFAR**)yya, 4);
|
||||
#endif
|
||||
{
|
||||
#line 133 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(VARIABLE_EXPR,yyattribute(1 - 1).variableIdx);
|
||||
#line 296 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 139 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(NOTEQUAL_EXPR,yyattribute(1 - 3).treenode,yyattribute(3 - 3).treenode);
|
||||
#line 297 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -303,9 +304,9 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
#endif
|
||||
{
|
||||
#line 137 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(VALUE_EXPR,yyattribute(1 - 1).value);
|
||||
#line 309 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 144 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(VARIABLE_EXPR,yyattribute(1 - 1).variableIdx);
|
||||
#line 310 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -316,22 +317,74 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
#endif
|
||||
{
|
||||
#line 138 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(VARIABLE_EXPR,yyattribute(1 - 1).variableIdx);
|
||||
#line 322 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 148 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(VALUE_EXPR,yyattribute(1 - 1).value);
|
||||
#line 323 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 20:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[2];
|
||||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
#endif
|
||||
{
|
||||
#line 149 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(VARIABLE_EXPR,yyattribute(1 - 1).variableIdx);
|
||||
#line 336 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 21:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[4];
|
||||
yyinitdebug((void YYFAR**)yya, 4);
|
||||
#endif
|
||||
{
|
||||
#line 139 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 150 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(PLUS_EXPR,yyattribute(1 - 3).treenode,yyattribute(3 - 3).treenode);
|
||||
#line 335 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 349 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 22:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[2];
|
||||
yyinitdebug((void YYFAR**)yya, 2);
|
||||
#endif
|
||||
{
|
||||
#line 151 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=yyattribute(1 - 1).treenode;
|
||||
#line 362 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 23:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[3];
|
||||
yyinitdebug((void YYFAR**)yya, 3);
|
||||
#endif
|
||||
{
|
||||
#line 156 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
if(yyattribute(1 - 2).functionNumber!=-1){m_functionNumber=yyattribute(1 - 2).functionNumber;m_functionArgs=getFunctionArgs(yyattribute(1 - 2).functionNumber);}
|
||||
#line 375 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 24:
|
||||
{
|
||||
#ifdef YYDEBUG
|
||||
YYSTYPE YYFAR* yya[5];
|
||||
yyinitdebug((void YYFAR**)yya, 5);
|
||||
#endif
|
||||
{
|
||||
#line 157 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
(*(YYSTYPE YYFAR*)yyvalptr).treenode=new CTreeNode(STMT_LIST,m_functionArgs,new CTreeNode(FUNCTION_EXPR,m_functionNumber));
|
||||
#line 388 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -340,14 +393,14 @@ s_baseTreeNode=yyattribute(1 - 1).treenode;
|
|||
break;
|
||||
}
|
||||
}
|
||||
#line 144 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
#line 162 "C:\\spongebob\\Utils\\scripter\\parser.y"
|
||||
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// programs section
|
||||
|
||||
#line 351 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
#line 404 "C:\\spongebob\\Utils\\scripter\\parser.cpp"
|
||||
void YYPARSENAME::yytables()
|
||||
{
|
||||
yyattribute_size = sizeof(YYSTYPE);
|
||||
|
@ -371,8 +424,9 @@ void YYPARSENAME::yytables()
|
|||
{ "CLOSE_PAR", 268 },
|
||||
{ "BEGIN_CS", 269 },
|
||||
{ "END_CS", 270 },
|
||||
{ "VARIABLE", 271 },
|
||||
{ "VALUE", 272 },
|
||||
{ "VARIABLE", 272 },
|
||||
{ "VALUE", 273 },
|
||||
{ "FUNCTION", 274 },
|
||||
{ NULL, 0 }
|
||||
};
|
||||
yysymbol = symbol;
|
||||
|
@ -390,6 +444,7 @@ void YYPARSENAME::yytables()
|
|||
"statement: IF OPEN_PAR expression CLOSE_PAR statement",
|
||||
"statement: IF OPEN_PAR expression CLOSE_PAR statement ELSE statement",
|
||||
"statement: BEGIN_CS statement_list END_CS",
|
||||
"statement: function END_STMT",
|
||||
"assign_expression: variable ASSIGN value",
|
||||
"expression: OPEN_PAR expression CLOSE_PAR",
|
||||
"expression: equal_expression",
|
||||
|
@ -399,7 +454,10 @@ void YYPARSENAME::yytables()
|
|||
"variable: VARIABLE",
|
||||
"value: VALUE",
|
||||
"value: VARIABLE",
|
||||
"value: value PLUS value"
|
||||
"value: value PLUS value",
|
||||
"value: function",
|
||||
"$$1:",
|
||||
"function: FUNCTION OPEN_PAR $$1 CLOSE_PAR"
|
||||
};
|
||||
yyrule = rule;
|
||||
#endif
|
||||
|
@ -417,155 +475,179 @@ void YYPARSENAME::yytables()
|
|||
{ 3, 5, 8 },
|
||||
{ 3, 7, 9 },
|
||||
{ 3, 3, 10 },
|
||||
{ 4, 3, 11 },
|
||||
{ 5, 3, 12 },
|
||||
{ 5, 1, 13 },
|
||||
{ 3, 2, 11 },
|
||||
{ 4, 3, 12 },
|
||||
{ 5, 3, 13 },
|
||||
{ 5, 1, 14 },
|
||||
{ 6, 3, 15 },
|
||||
{ 7, 3, 16 },
|
||||
{ 8, 1, 17 },
|
||||
{ 9, 1, 18 },
|
||||
{ 5, 1, 15 },
|
||||
{ 6, 3, 16 },
|
||||
{ 7, 3, 17 },
|
||||
{ 8, 1, 18 },
|
||||
{ 9, 1, 19 },
|
||||
{ 9, 3, 20 }
|
||||
{ 9, 1, 20 },
|
||||
{ 9, 3, 21 },
|
||||
{ 9, 1, 22 },
|
||||
{ 11, 0, 23 },
|
||||
{ 10, 4, 24 }
|
||||
};
|
||||
yyreduction = reduction;
|
||||
|
||||
static const yytokenaction_t YYNEARFAR YYBASED_CODE tokenaction[] = {
|
||||
{ 42, YYAT_SHIFT, 3 },
|
||||
{ 42, YYAT_SHIFT, 4 },
|
||||
{ 27, YYAT_SHIFT, 34 },
|
||||
{ 42, YYAT_SHIFT, 5 },
|
||||
{ 42, YYAT_SHIFT, 6 },
|
||||
{ 27, YYAT_SHIFT, 35 },
|
||||
{ 40, YYAT_SHIFT, 34 },
|
||||
{ 49, YYAT_SHIFT, 3 },
|
||||
{ 49, YYAT_SHIFT, 4 },
|
||||
{ 32, YYAT_SHIFT, 40 },
|
||||
{ 49, YYAT_SHIFT, 5 },
|
||||
{ 49, YYAT_SHIFT, 6 },
|
||||
{ 32, YYAT_SHIFT, 41 },
|
||||
{ 47, YYAT_SHIFT, 40 },
|
||||
{ 2, YYAT_SHIFT, 3 },
|
||||
{ 2, YYAT_SHIFT, 4 },
|
||||
{ 42, YYAT_SHIFT, 7 },
|
||||
{ 49, YYAT_SHIFT, 7 },
|
||||
{ 2, YYAT_SHIFT, 5 },
|
||||
{ 2, YYAT_SHIFT, 6 },
|
||||
{ 42, YYAT_SHIFT, 8 },
|
||||
{ 39, YYAT_SHIFT, 34 },
|
||||
{ 42, YYAT_SHIFT, 9 },
|
||||
{ 38, YYAT_SHIFT, 34 },
|
||||
{ 49, YYAT_SHIFT, 8 },
|
||||
{ 30, YYAT_SHIFT, 38 },
|
||||
{ 30, YYAT_SHIFT, 39 },
|
||||
{ 49, YYAT_SHIFT, 9 },
|
||||
{ 2, YYAT_SHIFT, 7 },
|
||||
{ 26, YYAT_SHIFT, 32 },
|
||||
{ 26, YYAT_SHIFT, 33 },
|
||||
{ 49, YYAT_SHIFT, 10 },
|
||||
{ 30, YYAT_ERROR, 0 },
|
||||
{ 2, YYAT_SHIFT, 8 },
|
||||
{ 37, YYAT_SHIFT, 42 },
|
||||
{ 46, YYAT_SHIFT, 40 },
|
||||
{ 45, YYAT_SHIFT, 40 },
|
||||
{ 2, YYAT_SHIFT, 9 },
|
||||
{ 26, YYAT_ERROR, 0 },
|
||||
{ 34, YYAT_SHIFT, 21 },
|
||||
{ 34, YYAT_SHIFT, 22 },
|
||||
{ 35, YYAT_SHIFT, 41 },
|
||||
{ 30, YYAT_SHIFT, 36 },
|
||||
{ 29, YYAT_SHIFT, 34 },
|
||||
{ 23, YYAT_SHIFT, 31 },
|
||||
{ 20, YYAT_SHIFT, 20 },
|
||||
{ 17, YYAT_SHIFT, 28 },
|
||||
{ 12, YYAT_SHIFT, 19 },
|
||||
{ 11, YYAT_SHIFT, 18 },
|
||||
{ 6, YYAT_SHIFT, 16 },
|
||||
{ 5, YYAT_SHIFT, 15 },
|
||||
{ 4, YYAT_SHIFT, 14 },
|
||||
{ 3, YYAT_SHIFT, 13 },
|
||||
{ 44, YYAT_SHIFT, 49 },
|
||||
{ 2, YYAT_SHIFT, 10 },
|
||||
{ 40, YYAT_SHIFT, 25 },
|
||||
{ 40, YYAT_SHIFT, 26 },
|
||||
{ 40, YYAT_SHIFT, 10 },
|
||||
{ 41, YYAT_SHIFT, 48 },
|
||||
{ 36, YYAT_SHIFT, 43 },
|
||||
{ 35, YYAT_SHIFT, 40 },
|
||||
{ 34, YYAT_SHIFT, 42 },
|
||||
{ 27, YYAT_SHIFT, 37 },
|
||||
{ 24, YYAT_SHIFT, 24 },
|
||||
{ 19, YYAT_SHIFT, 33 },
|
||||
{ 14, YYAT_SHIFT, 23 },
|
||||
{ 13, YYAT_SHIFT, 22 },
|
||||
{ 12, YYAT_SHIFT, 21 },
|
||||
{ 10, YYAT_SHIFT, 20 },
|
||||
{ 6, YYAT_SHIFT, 18 },
|
||||
{ 5, YYAT_SHIFT, 17 },
|
||||
{ 4, YYAT_SHIFT, 16 },
|
||||
{ 3, YYAT_SHIFT, 15 },
|
||||
{ 1, YYAT_ACCEPT, 0 }
|
||||
};
|
||||
yytokenaction = tokenaction;
|
||||
yytokenaction_size = 38;
|
||||
yytokenaction_size = 44;
|
||||
|
||||
static const yystateaction_t YYNEARFAR YYBASED_CODE stateaction[] = {
|
||||
{ 0, 0, YYAT_REDUCE, 3 },
|
||||
{ 37, 1, YYAT_ERROR, 0 },
|
||||
{ 43, 1, YYAT_ERROR, 0 },
|
||||
{ -250, 1, YYAT_REDUCE, 1 },
|
||||
{ -230, 1, YYAT_DEFAULT, 35 },
|
||||
{ -232, 1, YYAT_DEFAULT, 6 },
|
||||
{ -232, 1, YYAT_DEFAULT, 35 },
|
||||
{ -234, 1, YYAT_ERROR, 0 },
|
||||
{ -224, 1, YYAT_DEFAULT, 41 },
|
||||
{ -226, 1, YYAT_DEFAULT, 10 },
|
||||
{ -226, 1, YYAT_DEFAULT, 41 },
|
||||
{ -228, 1, YYAT_DEFAULT, 10 },
|
||||
{ 0, 0, YYAT_REDUCE, 4 },
|
||||
{ 0, 0, YYAT_REDUCE, 3 },
|
||||
{ 0, 0, YYAT_REDUCE, 18 },
|
||||
{ 0, 0, YYAT_REDUCE, 2 },
|
||||
{ -234, 1, YYAT_DEFAULT, 35 },
|
||||
{ -231, 1, YYAT_ERROR, 0 },
|
||||
{ 0, 0, YYAT_REDUCE, 5 },
|
||||
{ 0, 0, YYAT_DEFAULT, 20 },
|
||||
{ 0, 0, YYAT_REDUCE, 6 },
|
||||
{ 0, 0, YYAT_DEFAULT, 34 },
|
||||
{ -240, 1, YYAT_DEFAULT, 42 },
|
||||
{ 0, 0, YYAT_REDUCE, 8 },
|
||||
{ 0, 0, YYAT_DEFAULT, 34 },
|
||||
{ -238, 1, YYAT_DEFAULT, 34 },
|
||||
{ 0, 0, YYAT_REDUCE, 20 },
|
||||
{ 0, 0, YYAT_REDUCE, 19 },
|
||||
{ -240, 1, YYAT_DEFAULT, 30 },
|
||||
{ 0, 0, YYAT_REDUCE, 14 },
|
||||
{ -229, 1, YYAT_ERROR, 0 },
|
||||
{ 0, 0, YYAT_REDUCE, 2 },
|
||||
{ -229, 1, YYAT_DEFAULT, 41 },
|
||||
{ -226, 1, YYAT_ERROR, 0 },
|
||||
{ -231, 1, YYAT_DEFAULT, 41 },
|
||||
{ 0, 0, YYAT_REDUCE, 5 },
|
||||
{ 0, 0, YYAT_DEFAULT, 24 },
|
||||
{ 0, 0, YYAT_REDUCE, 6 },
|
||||
{ 0, 0, YYAT_DEFAULT, 40 },
|
||||
{ -236, 1, YYAT_DEFAULT, 49 },
|
||||
{ 0, 0, YYAT_REDUCE, 24 },
|
||||
{ 0, 0, YYAT_REDUCE, 8 },
|
||||
{ 0, 0, YYAT_DEFAULT, 40 },
|
||||
{ 0, 0, YYAT_REDUCE, 12 },
|
||||
{ -234, 1, YYAT_DEFAULT, 40 },
|
||||
{ 0, 0, YYAT_REDUCE, 21 },
|
||||
{ 0, 0, YYAT_REDUCE, 20 },
|
||||
{ -236, 1, YYAT_DEFAULT, 36 },
|
||||
{ 0, 0, YYAT_REDUCE, 15 },
|
||||
{ -246, 1, YYAT_DEFAULT, 27 },
|
||||
{ -263, 1, YYAT_DEFAULT, 30 },
|
||||
{ 0, 0, YYAT_REDUCE, 16 },
|
||||
{ -250, 1, YYAT_DEFAULT, 32 },
|
||||
{ 0, 0, YYAT_REDUCE, 23 },
|
||||
{ -263, 1, YYAT_DEFAULT, 36 },
|
||||
{ 0, 0, YYAT_REDUCE, 11 },
|
||||
{ -238, 1, YYAT_REDUCE, 12 },
|
||||
{ -242, 1, YYAT_ERROR, 0 },
|
||||
{ 0, 0, YYAT_DEFAULT, 42 },
|
||||
{ 0, 0, YYAT_DEFAULT, 34 },
|
||||
{ 0, 0, YYAT_DEFAULT, 34 },
|
||||
{ -248, 1, YYAT_ERROR, 0 },
|
||||
{ -241, 1, YYAT_ERROR, 0 },
|
||||
{ 0, 0, YYAT_REDUCE, 13 },
|
||||
{ -239, 1, YYAT_REDUCE, 9 },
|
||||
{ -250, 1, YYAT_REDUCE, 16 },
|
||||
{ -252, 1, YYAT_REDUCE, 17 },
|
||||
{ -259, 1, YYAT_REDUCE, 21 },
|
||||
{ -237, 1, YYAT_DEFAULT, 36 },
|
||||
{ -235, 1, YYAT_REDUCE, 13 },
|
||||
{ -239, 1, YYAT_ERROR, 0 },
|
||||
{ 0, 0, YYAT_DEFAULT, 49 },
|
||||
{ 0, 0, YYAT_DEFAULT, 40 },
|
||||
{ 0, 0, YYAT_DEFAULT, 40 },
|
||||
{ -247, 1, YYAT_ERROR, 0 },
|
||||
{ -238, 1, YYAT_ERROR, 0 },
|
||||
{ 0, 0, YYAT_REDUCE, 25 },
|
||||
{ 0, 0, YYAT_REDUCE, 14 },
|
||||
{ -236, 1, YYAT_REDUCE, 9 },
|
||||
{ -244, 1, YYAT_REDUCE, 17 },
|
||||
{ -245, 1, YYAT_REDUCE, 18 },
|
||||
{ -259, 1, YYAT_REDUCE, 22 },
|
||||
{ 0, 0, YYAT_REDUCE, 7 },
|
||||
{ -257, 1, YYAT_DEFAULT, 35 },
|
||||
{ -257, 1, YYAT_DEFAULT, 41 },
|
||||
{ 0, 0, YYAT_REDUCE, 10 }
|
||||
};
|
||||
yystateaction = stateaction;
|
||||
|
||||
static const yynontermgoto_t YYNEARFAR YYBASED_CODE nontermgoto[] = {
|
||||
{ 20, 30 },
|
||||
{ 20, 24 },
|
||||
{ 20, 25 },
|
||||
{ 34, 40 },
|
||||
{ 20, 26 },
|
||||
{ 42, 43 },
|
||||
{ 42, 11 },
|
||||
{ 49, 50 },
|
||||
{ 49, 12 },
|
||||
{ 24, 36 },
|
||||
{ 24, 28 },
|
||||
{ 24, 29 },
|
||||
{ 49, 13 },
|
||||
{ 24, 30 },
|
||||
{ 49, 14 },
|
||||
{ 40, 47 },
|
||||
{ 40, 31 },
|
||||
{ 0, 1 },
|
||||
{ 0, 2 },
|
||||
{ 33, 39 },
|
||||
{ 42, 12 },
|
||||
{ 32, 38 },
|
||||
{ 31, 37 },
|
||||
{ 19, 29 },
|
||||
{ 17, 10 },
|
||||
{ 39, 46 },
|
||||
{ 38, 45 },
|
||||
{ 37, 44 },
|
||||
{ 22, 35 },
|
||||
{ 20, 34 },
|
||||
{ 19, 11 },
|
||||
{ 18, 32 },
|
||||
{ 16, 27 },
|
||||
{ 14, 23 },
|
||||
{ 8, 17 }
|
||||
{ 8, 19 }
|
||||
};
|
||||
yynontermgoto = nontermgoto;
|
||||
yynontermgoto_size = 18;
|
||||
yynontermgoto_size = 21;
|
||||
|
||||
static const yystategoto_t YYNEARFAR YYBASED_CODE stategoto[] = {
|
||||
{ 6, -1 },
|
||||
{ 9, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, 17 },
|
||||
{ 0, 19 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 15, -1 },
|
||||
{ 18, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 11, 20 },
|
||||
{ 0, -1 },
|
||||
{ 6, -1 },
|
||||
{ 11, 42 },
|
||||
{ 0, -1 },
|
||||
{ 4, -1 },
|
||||
{ -5, -1 },
|
||||
{ 14, 24 },
|
||||
{ 0, -1 },
|
||||
{ 9, 40 },
|
||||
{ 14, 49 },
|
||||
{ 5, -1 },
|
||||
{ 0, -1 },
|
||||
{ 6, 40 },
|
||||
{ 0, -1 },
|
||||
{ -3, 40 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
|
@ -576,10 +658,12 @@ void YYPARSENAME::yytables()
|
|||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 9, 42 },
|
||||
{ 2, -1 },
|
||||
{ 0, -1 },
|
||||
{ -6, -1 },
|
||||
{ 0, -1 },
|
||||
{ 11, 49 },
|
||||
{ 4, 40 },
|
||||
{ 3, 40 },
|
||||
{ -1, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
|
@ -587,7 +671,8 @@ void YYPARSENAME::yytables()
|
|||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 0, -1 },
|
||||
{ 2, -1 },
|
||||
{ 0, -1 },
|
||||
{ -3, -1 },
|
||||
{ 0, -1 }
|
||||
};
|
||||
yystategoto = stategoto;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue