Exemplo n.º 1
0
 void Parse_TokenDeclaration(Context& ctx)
 {
     if (ctx.Token() == TKKeywordToken)
     {
         //TokenDeclaration => KeywordToken Identifier EqualsCharacter TokenExpression SemicolonCharacter 
         ctx.Action_teste();
         ctx.Match(TKKeywordToken);
         ctx.Match(TKIdentifier);
         ctx.Action_TokenName();
         ctx.Match(TKEqualsCharacter);
         Parse_TokenExpression(ctx);
         ctx.Match(TKSemicolonCharacter);
         ctx.Action_TokenEnd();
     }
     else
     {
         assert(false);
     }
 }
Exemplo n.º 2
0
void Parse_TokenDeclaration(Context& ctx)
{
    if (ctx.Token() == TKKeywordToken)
    {
        //TokenDeclaration => KeywordToken Identifier EqualsCharacter TokenExpression SemicolonCharacter
        ctx.Action_teste();
        ctx.Match(TKKeywordToken);
        ctx.Match(TKIdentifier);
        ctx.Action_TokenName();
        ctx.Match(TKEqualsCharacter);
        Parse_TokenExpression(ctx);
        ctx.Match(TKSemicolonCharacter);
        ctx.Action_TokenEnd();
    }
    else
    {
        throw ParserException(ctx.GetLine(), ctx.GetCol(), ErrorCodeUnexpectedToken);
    }
}