traceIn("singleType"); try { returnAST = null; ASTPair currentAST = new ASTPair(); org.exist.xquery.parser.XQueryAST singleType_AST = null;  atomicType(); astFactory.addASTChild(currentAST, returnAST); { switch ( LA(1)) { case QUESTION: { org.exist.xquery.parser.XQueryAST tmp165_AST = null; tmp165_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1)); astFactory.addASTChild(currentAST, tmp165_AST); match(QUESTION); break; } case EOF: case RPAREN: case RCURLY: case COMMA: case LITERAL_empty: case LITERAL_for: case LITERAL_let: case LITERAL_where: case LITERAL_return: case LITERAL_order: case LITERAL_ascending: case LITERAL_descending: case LITERAL_satisfies: case LITERAL_else: case LITERAL_or: case LITERAL_and: case RPPAREN: { break; } default: { throw new NoViableAltException(LT(1), getFilename()); } } } singleType_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root; returnAST = singleType_AST; } finally { traceOut("singleType");
returnAST = null; ASTPair currentAST = new ASTPair(); org.exist.xquery.parser.XQueryAST singleType_AST = null;  atomicType(); astFactory.addASTChild(currentAST, returnAST); { switch ( LA(1)) { case QUESTION: { org.exist.xquery.parser.XQueryAST tmp163_AST = null; tmp163_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1)); astFactory.addASTChild(currentAST, tmp163_AST); match(QUESTION); break;
	public final void singleType() throws RecognitionException, TokenStreamException {				traceIn("singleType");		try { // debugging			returnAST = null;			ASTPair currentAST = new ASTPair();			org.exist.xquery.parser.XQueryAST singleType_AST = null;						atomicType();			astFactory.addASTChild(currentAST, returnAST);			{			switch ( LA(1)) {			case QUESTION:			{				org.exist.xquery.parser.XQueryAST tmp165_AST = null;				tmp165_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1));				astFactory.addASTChild(currentAST, tmp165_AST);				match(QUESTION);				break;			}			case EOF:			case RPAREN:			case RCURLY:			case COMMA:			case LITERAL_empty:			case LITERAL_for:			case LITERAL_let:			case LITERAL_where:			case LITERAL_return:			case LITERAL_order:			case LITERAL_ascending:			case LITERAL_descending:			case LITERAL_satisfies:			case LITERAL_else:			case LITERAL_or:			case LITERAL_and:			case RPPAREN:			{				break;			}			default:			{				throw new NoViableAltException(LT(1), getFilename());			}			}			}			singleType_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;			returnAST = singleType_AST;		} finally { // debugging			traceOut("singleType");		}	}