Statement
#include <stdio.h>
#include "commons.h"
void statement_list(_bool* is_stmt)
{
switch(tok)
{
case FOR:
{
nextToken();
if(tok == '(')
{
nextToken();
is_expr(&isexpr);
if(isexpr == TRUE)
{
nextToken();
while(tok == ';')
{
is_expr(&isexpr);
if(isexpr == TRUE)
{
nextToken();
}
}
if(tok == ')')
{
*is_stmt = TRUE;
nextToken();
}
else
{
printf("error! wrong usage of 'for' keyword\n");
exit(0);
}
}
}
else
{
*is_stmt = FALSE;
}
}
break;
case IF:
{
nextToken();
if(tok == '(')
{
nextToken();
is_expr(&isexpr);
if(isexpr == TRUE)
{
if(tok == ')')
{
*is_stmt = TRUE;
nextToken();
}
else
{
printf("error! wrong usage of 'if' keyword\n");
exit(0);
}
}
}
}
break;
case WHILE:
{
nextToken();
if(tok == '(')
{
nextToken();
is_expr(&isexpr);
if(isexpr == TRUE)
{
if(tok == ')')
{
*is_stmt = TRUE;
nextToken();
}
else
{
printf("error! wrong usage of 'while' keyword\n");
exit(0);
}
}
}
}
break;
case RETURN:
{
}
break;
case DO:
{
}
break;
case CONTINUE:
break;
case SWITCH:
break;
default:
*is_stmt = FALSE;
break;
}
}
Comments
Post a Comment