public void do_while_statement(Block container)
{
IToken token = null;
IToken token2 = null;
try
{
WhileStatement statement2;
Block block;
token = this.LT(1);
this.match(10);
if (base.inputState.guessing == 0)
{
WhileStatement statement;
WhileStatement statement1 = statement = new WhileStatement(ToLexicalInfo(token));
statement.set_Condition(new BoolLiteralExpression(true));
statement2 = statement;
block = statement2.get_Block();
container.Add(statement2);
this.EnterLoop(statement2);
}
this.block(block);
token2 = this.LT(1);
this.match(0x2f);
Expression expression = this.paren_expression();
this.eos();
if (base.inputState.guessing == 0)
{
BreakStatement statement3;
BreakStatement statement4 = statement3 = new BreakStatement(ToLexicalInfo(token2));
statement3.set_Modifier(new StatementModifier(2, expression));
block.Add(statement3);
this.LeaveLoop(statement2);
}
}
catch (RecognitionException exception)
{
if (base.inputState.guessing != 0)
{
throw;
}
this.reportError(exception);
this.recover(exception, tokenSet_15_);
}
}