コード例 #1
0
        protected ObjectDef EmitStatement(CParser.StatementContext statement)
        {
            ObjectDef returnObjectDef = null;

            if (statement.compoundStatement() != null)
            {
                returnObjectDef = EmitCompoundStatement(statement.compoundStatement());
            }
            else if (statement.expressionStatement() != null)
            {
                returnObjectDef = EmitExpressionStatement(statement.expressionStatement());
            }
            else if (statement.selectionStatement() != null)
            {
                returnObjectDef = EmitSelectionStatement(statement.selectionStatement());
            }
            else if (statement.iterationStatement() != null)
            {
                returnObjectDef = EmitIterationStatement(statement.iterationStatement());
            }
            else if (statement.jumpStatement() != null)
            {
                returnObjectDef = EmitJumpStatement(statement.jumpStatement());
            }

            return(returnObjectDef);
        }
コード例 #2
0
        //STATEMENTS
        //http://en.cppreference.com/w/c/language/statements

        public override void ExitStatement(CParser.StatementContext context)
        {
            if (context.StringLiteral() != null)
            {
                //'asm' '(' StringLiteral ')'';'

                CStatment.AsmStatement(context.StringLiteral().GetText());
            }
        }