org.exist.xquery.parser.XQueryAST tmp179_AST = null; tmp179_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1)); astFactory.makeASTRoot(currentAST, tmp179_AST);
org.exist.xquery.parser.XQueryAST tmp178_AST = null; tmp178_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1)); astFactory.makeASTRoot(currentAST, tmp178_AST);
	public final void castExpr() throws RecognitionException, TokenStreamException, XPathException {				returnAST = null;		ASTPair currentAST = new ASTPair();		org.exist.xquery.parser.XQueryAST castExpr_AST = null;				comparisonExpr();		astFactory.addASTChild(currentAST, returnAST);		{		switch ( LA(1)) {		case LITERAL_cast:		{			org.exist.xquery.parser.XQueryAST tmp179_AST = null;			tmp179_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1));			astFactory.makeASTRoot(currentAST, tmp179_AST);			match(LITERAL_cast);			match(LITERAL_as);			singleType();			astFactory.addASTChild(currentAST, returnAST);			break;		}		case EOF:		case RPAREN:		case LITERAL_default:		case LITERAL_collation:		case RCURLY:		case LITERAL_as:		case COMMA:		case LITERAL_empty:		case LITERAL_for:		case LITERAL_let:		case LITERAL_with:		case LITERAL_into:		case LITERAL_preceding:		case LITERAL_following:		case LITERAL_where:		case LITERAL_return:		case LITERAL_order:		case LITERAL_ascending:		case LITERAL_descending:		case LITERAL_satisfies:		case LITERAL_case:		case LITERAL_else:		case LITERAL_or:		case LITERAL_and:		case LITERAL_instance:		case LITERAL_castable:		case RPPAREN:		{			break;		}		default:		{			throw new NoViableAltException(LT(1), getFilename());		}		}		}		castExpr_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;		returnAST = castExpr_AST;	}