public Expression atom()
{
Expression expression = null;
try
{
switch (this.LA(1))
{
case 15:
case 0x1d:
case 0x27:
case 40:
case 0x2a:
case 60:
case 0x3d:
case 0x44:
case 0x69:
case 0x6a:
case 0x6b:
case 0x6c:
case 0x6d:
return this.literal();
case 0x13:
return this.function_expression();
case 12:
case 0x3b:
return this.simple_reference_expression();
case 0x3f:
return this.paren_expression();
case 0x1b:
return this.new_expression();
case 0x2c:
return this.typeof_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;
}