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