*** compile.py_orig 2003-07-23 15:33:53.000000000 +0200 --- compile.py 2003-07-23 17:28:02.000000000 +0200 *************** *** 42,48 **** if txt is None: return None front, back = txt.split("(") ! back = back[:-1].strip() front = front.split() if constructor: ret = jret = None --- 42,50 ---- if txt is None: return None front, back = txt.split("(") ! args, excs = back.split(")") ! args = args.strip() ! excs = excs[7:].strip() front = front.split() if constructor: ret = jret = None *************** *** 52,65 **** mods = SPACE.join(front[:-2]) jret = insistJavaClass(ret) arglist = [] ! if len(back) > 0: ! for arg in back.split(','): c, name = arg.split() jc = insistJavaClass(c) arglist.append( (jc, name) ) sigs = [] for ndefaults in range(0, len(pargs.defaults)+1): ! sigs.append( (mods, jret, arglist[:len(arglist)-ndefaults], []) ) return sigs --- 54,72 ---- mods = SPACE.join(front[:-2]) jret = insistJavaClass(ret) arglist = [] ! if len(args) > 0: ! for arg in args.split(','): c, name = arg.split() jc = insistJavaClass(c) arglist.append( (jc, name) ) + exclist = [] + if len(excs) > 0: + for exc in excs.split(','): + jexc = insistJavaClass(exc) + exclist.append(jexc) sigs = [] for ndefaults in range(0, len(pargs.defaults)+1): ! sigs.append( (mods, jret, arglist[:len(arglist)-ndefaults], exclist) ) return sigs