public Statement for_c(Block container) { Statement statement = null; try { Expression expression; Expression expression2; WhileStatement statement3; Block block; string str; switch (this.LA(1)) { case 0x2d: this.declaration_statement(container); if (base.inputState.guessing == 0) { statement = container.get_Statements().get_Item(-1) as DeclarationStatement; if (statement != null) { statement.Annotate("PrivateScope"); } } break; case 12: case 15: case 0x13: case 0x1b: case 0x1d: case 0x27: case 40: case 0x2a: case 0x2c: case 0x3b: case 60: case 0x3d: case 0x3f: case 0x44: case 0x4f: case 80: case 0x52: case 0x58: case 0x67: case 0x69: case 0x6a: case 0x6b: case 0x6c: case 0x6d: this.expression_statement(container); break; case 0x4d: break; default: throw new NoViableAltException(this.LT(1), this.getFilename()); } this.match(0x4d); switch (this.LA(1)) { case 12: case 15: case 0x13: case 0x1b: case 0x1d: case 0x27: case 40: case 0x2a: case 0x2c: case 0x3b: case 60: case 0x3d: case 0x3f: case 0x44: case 0x4f: case 80: case 0x52: case 0x58: case 0x67: case 0x69: case 0x6a: case 0x6b: case 0x6c: case 0x6d: expression = this.expression(); break; case 0x4d: break; default: throw new NoViableAltException(this.LT(1), this.getFilename()); } this.match(0x4d); switch (this.LA(1)) { case 12: case 15: case 0x13: case 0x1b: case 0x1d: case 0x27: case 40: case 0x2a: case 0x2c: case 0x3b: case 60: case 0x3d: case 0x3f: case 0x44: case 0x4f: case 80: case 0x52: case 0x58: case 0x67: case 0x69: case 0x6a: case 0x6b: case 0x6c: case 0x6d: expression2 = this.assignment_expression(); break; case 0x40: break; default: throw new NoViableAltException(this.LT(1), this.getFilename()); } if (base.inputState.guessing == 0) { WhileStatement statement2; WhileStatement statement1 = statement2 = new WhileStatement(); statement2.set_Condition(expression); statement3 = statement2; if (expression == null) { BoolLiteralExpression expression3; BoolLiteralExpression expression1 = expression3 = new BoolLiteralExpression(); expression3.set_Value(true); statement3.set_Condition(expression3); } block = statement3.get_Block(); statement = statement3; str = this.SetUpLoopLabel(statement3); container.Add(statement); this.EnterLoop(statement3); } this.match(0x40); this.compound_or_single_stmt(block); if (base.inputState.guessing != 0) { return statement; } this.LeaveLoop(statement3); if (this.IsLabelInUse(statement3)) { LabelStatement statement4; LabelStatement statement5 = statement4 = new LabelStatement(); statement4.set_Name(str); block.Add(statement4); } if (expression2 != null) { block.Add(expression2); } } catch (RecognitionException exception) { if (base.inputState.guessing != 0) { throw; } this.reportError(exception); this.recover(exception, tokenSet_15_); return statement; } return statement; }
public BoolLiteralExpression bool_literal() { BoolLiteralExpression expression = null; IToken token = null; IToken token2 = null; try { switch (this.LA(1)) { case 0x2a: token = this.LT(1); this.match(0x2a); if (base.inputState.guessing == 0) { BoolLiteralExpression expression2; BoolLiteralExpression expression1 = expression2 = new BoolLiteralExpression(ToLexicalInfo(token)); expression2.set_Value(true); expression = expression2; } return expression; case 15: token2 = this.LT(1); this.match(15); if (base.inputState.guessing == 0) { BoolLiteralExpression expression3; BoolLiteralExpression expression4 = expression3 = new BoolLiteralExpression(ToLexicalInfo(token2)); expression3.set_Value(false); expression = expression3; } return expression; } throw new NoViableAltException(this.LT(1), this.getFilename()); } catch (RecognitionException exception) { if (base.inputState.guessing != 0) { throw; } this.reportError(exception); this.recover(exception, tokenSet_20_); return expression; } return expression; }