[110] TypeDeclaration ::= "as" SequenceType
************************************************************************/
final public List<ParametricVariable> parseParamList() throws ParseException, XQueryException {
final List<ParametricVariable> paramList = new LinkedList<ParametricVariable>();
QualifiedName paramName;
ParametricVariable param;
Type paramType = null;
currentToken = jj_consume_token(VariableIndicator);
currentToken = jj_consume_token(VarName);
paramName = QNameUtil.parse(currentToken.image, namespaceContext, currentModule.getNamespace());
param = new ParametricVariable(paramName);
currentModule.putVariable(paramName, param);
switch(jj_nt.kind) {
case As:
currentToken = jj_consume_token(As);
paramType = parseSequenceType();
param.setType(paramType);
break;
default:
jj_la1[27] = jj_gen;
;
}
paramList.add(param);
label_5: while(true) {
switch(jj_nt.kind) {
case Comma:
;
break;
default:
jj_la1[28] = jj_gen;
break label_5;
}
currentToken = jj_consume_token(Comma);
currentToken = jj_consume_token(VariableIndicator);
currentToken = jj_consume_token(VarName);
paramName = QNameUtil.parse(currentToken.image, namespaceContext, currentModule.getNamespace());
param = new ParametricVariable(paramName);
currentModule.putVariable(paramName, param);
switch(jj_nt.kind) {
case As:
currentToken = jj_consume_token(As);
paramType = parseSequenceType();
param.setType(paramType);
break;
default:
jj_la1[29] = jj_gen;
;
}