iter = iter(getattr(jast, jastMethod, "@!arguments", argumentsHint, tc), tc);
while (istrue(iter, tc) != 0) {
SixModelObject pair = iter.shift_boxed(tc);
String name = pair.at_pos_boxed(tc, 0).get_str(tc);
Type type = processType(pair.at_pos_boxed(tc, 1).get_str(tc));
arguments.add(type);
if (locals.containsKey(name))
throw new Exception("Duplicate local name: " + name);
locals.put(name, new VariableDef(curArgIndex, type.getDescriptor(), beginAll, endAll));
curArgIndex += (type == Type.LONG_TYPE || type == Type.DOUBLE_TYPE ? 2 : 1);