org.exist.xquery.parser.XQueryAST literalExpr_AST_in = (org.exist.xquery.parser.XQueryAST)_t;
org.exist.xquery.parser.XQueryAST literalExpr_AST_in = (_t == ASTNULL) ? null : (org.exist.xquery.parser.XQueryAST)_t;
	public final Expression  literalExpr(AST _t,		PathExpr path	) throws RecognitionException, XPathException {		Expression step;				org.exist.xquery.parser.XQueryAST literalExpr_AST_in = (org.exist.xquery.parser.XQueryAST)_t;		org.exist.xquery.parser.XQueryAST c = null;		org.exist.xquery.parser.XQueryAST i = null;		org.exist.xquery.parser.XQueryAST dec = null;		org.exist.xquery.parser.XQueryAST dbl = null;		step= null;				if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case STRING_LITERAL:		{			c = (org.exist.xquery.parser.XQueryAST)_t;			match(_t,STRING_LITERAL);			_t = _t.getNextSibling();						step= new LiteralValue(context, new StringValue(c.getText()));			step.setASTNode(c);						break;		}		case INTEGER_LITERAL:		{			i = (org.exist.xquery.parser.XQueryAST)_t;			match(_t,INTEGER_LITERAL);			_t = _t.getNextSibling();						step= new LiteralValue(context, new IntegerValue(Integer.parseInt(i.getText())));			step.setASTNode(i);						break;		}		case DOUBLE_LITERAL:		case DECIMAL_LITERAL:		{			{			if (_t==null) _t=ASTNULL;			switch ( _t.getType()) {			case DECIMAL_LITERAL:			{				dec = (org.exist.xquery.parser.XQueryAST)_t;				match(_t,DECIMAL_LITERAL);				_t = _t.getNextSibling();								step= new LiteralValue(context, new DecimalValue(dec.getText()));				step.setASTNode(dec);								break;			}			case DOUBLE_LITERAL:			{				dbl = (org.exist.xquery.parser.XQueryAST)_t;				match(_t,DOUBLE_LITERAL);				_t = _t.getNextSibling();								step= new LiteralValue(context, 				new DoubleValue(Double.parseDouble(dbl.getText())));				step.setASTNode(dbl);								break;			}			default:			{				throw new NoViableAltException(_t);			}			}			}			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		_retTree = _t;		return step;	}