From: William F. <wsf...@us...> - 2004-10-06 21:09:29
|
Update of /cvsroot/swig/SWIG/Source/Modules In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11462 Modified Files: java.cxx Log Message: fixes for the new default argument wrapping in director constructors and virtual methods Index: java.cxx =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Modules/java.cxx,v retrieving revision 1.68 retrieving revision 1.69 diff -C2 -d -r1.68 -r1.69 *** java.cxx 14 Sep 2004 21:37:18 -0000 1.68 --- java.cxx 6 Oct 2004 21:09:16 -0000 1.69 *************** *** 3309,3317 **** if(!is_void) { Replaceall(w->code,"$null", qualified_return); ! } else Replaceall(w->code,"$null",""); ! Wrapper_print(w, f_directors); Wrapper_print(imw, imclass_directors); ! Printv(f_directors_h, declaration, NIL); } --- 3309,3320 ---- if(!is_void) { Replaceall(w->code,"$null", qualified_return); ! } else { Replaceall(w->code,"$null",""); ! } Wrapper_print(imw, imclass_directors); ! if (!Getattr(n,"defaultargs")) { ! Wrapper_print(w, f_directors); ! Printv(f_directors_h, declaration, NIL); ! } } *************** *** 3383,3408 **** directorPrefixArgs(n); ! /* constructor */ ! { ! String *basetype = Getattr(parent, "classtype"); ! String *target = Swig_method_decl(decl, classname, parms, 0, 0); ! String *call = Swig_csuperclass_call(0, basetype, superparms); ! String *classtype = SwigType_namestr(Getattr(n, "name")); ! String *dirclass_type = SwigType_namestr(Getattr(n, "sym:name")); ! Printf(f_directors, "%s::%s: %s, %s {\n", classname, target, call, Getattr(parent, "director:ctor")); ! Printf(f_directors, "}\n\n"); ! Delete(dirclass_type); ! Delete(classtype); ! Delete(target); ! Delete(call); ! } ! ! /* constructor header */ ! { ! String *target = Swig_method_decl(decl, classname, parms, 0, 1); ! Printf(f_directors_h, " %s;\n", target); ! Delete(target); } --- 3386,3413 ---- directorPrefixArgs(n); ! if (!Getattr(n,"defaultargs")) { ! /* constructor */ ! { ! String *basetype = Getattr(parent, "classtype"); ! String *target = Swig_method_decl(decl, classname, parms, 0, 0); ! String *call = Swig_csuperclass_call(0, basetype, superparms); ! String *classtype = SwigType_namestr(Getattr(n, "name")); ! String *dirclass_type = SwigType_namestr(Getattr(n, "sym:name")); ! Printf(f_directors, "%s::%s: %s, %s {\n", classname, target, call, Getattr(parent, "director:ctor")); ! Printf(f_directors, "}\n\n"); ! Delete(dirclass_type); ! Delete(classtype); ! Delete(target); ! Delete(call); ! } ! ! /* constructor header */ ! { ! String *target = Swig_method_decl(decl, classname, parms, 0, 1); ! Printf(f_directors_h, " %s;\n", target); ! Delete(target); ! } } |