protected Expression cast_expression()
{
Expression e;
IToken t = null;
e = null;
TypeReference tr = null;
Expression target = null;
try { // for error handling
t = LT(1);
match(CAST);
match(LPAREN);
tr=type_reference();
match(COMMA);
target=expression();
match(RPAREN);
if (0==inputState.guessing)
{
e = new CastExpression(ToLexicalInfo(t), target, tr);
}
}
catch (RecognitionException ex)
{
if (0 == inputState.guessing)
{
reportError(ex, "cast_expression");
recover(ex,tokenSet_41_);
}
else
{
throw ex;
}
}
return e;
}