示例#1
0
 public object Visit(ElseifActionNode n, object o)
 {
     Append($"{AddIndent()}else if (");
     n.Expression.Accept(this, null);
     AppendLine(")");
     AppendLine($"{AddIndent()}{{");
     IncreaseIndent();
     n.Actions.Accept(this, null);
     DecreaseIndent();
     AppendLine($"{AddIndent()}}}");
     return(null);
 }
示例#2
0
        private ActionNode ParseElseifStatement()
        {
            ActionNode         itsAST;
            SourceCodePosition itsPos = _currentToken.SourcePosition;

            Accept(Token.TokenType.Elseif);
            Accept(Token.TokenType.LeftParen);
            ExpressionNode itsExpr = Expression();

            Accept(Token.TokenType.RightParen);
            Accept(Token.TokenType.LeftBrace);
            ActionSequenceNode itsActions = ActionStatements();

            Accept(Token.TokenType.RightBrace);
            itsAST = new ElseifActionNode(itsExpr, itsActions, itsPos);
            return(itsAST);
        }
示例#3
0
 public object Visit(ElseifActionNode n, object o)
 {
     return(null);
 }