final public JFile Input() throws ParseException {
ArrayList<JFile> ilist = new ArrayList<JFile>();
ArrayList<JRecord> rlist = new ArrayList<JRecord>();
ArrayList<JService> serviceList = new ArrayList<JService>();
JFile i;
ArrayList<JRecord> l;
JModule module;
label_1: while (true) {
switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) {
case INCLUDE_TKN:
i = Include();
ilist.add(i);
break;
case MODULE_TKN:
module = Module();
rlist.addAll(module.getRecords());
serviceList.addAll(module.getServices());
break;
default:
jj_la1[0] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) {
case MODULE_TKN:
case INCLUDE_TKN:
;
break;
default:
jj_la1[1] = jj_gen;
break label_1;
}
}
jj_consume_token(0);
{
if (true)
return new JFile(curFileName, ilist, rlist, serviceList);
}
throw new Error("Missing return statement in function");
}