Phil Thompson wrote: > On Thu, 29 Oct 2009 10:08:33 +0100, Sébastien Petitdemange > <sebastien.petitdema...@esrf.fr> wrote: >> Hi, >> >> We are developing a C++ library that uses a single exception class >> (Exception) for throwing errors. >> >> When wrapping the library with sip, we use the -e command line to >> activate the try/catch code on each C++ call. >> >> However, our C++ code does not include the "throw(Exception)" modifier >> on each class method, because virtually any method can throw this >> exception, and it would be quite heavy to add it on every declaration. >> >> In this scenario, sip (v4.7.9) just include a default try {} catch (...) >> { sipRaiseUnknownException }, so Python reports "Exception: Unknown". >> >> Is there a way to specify a default exception handler to sip, so the >> generated code in this case would like something like: >> >> try { >> // C++ call >> } catch (OurDefaultException& e) { >> ... >> sipRaiseClassException(sipclass_OurDefaultException ... ); >> } catch (...) { >> sipRaiseUnknownException(); >> } > > I've added support for a /Default/ exception annotation in tonight's > snapshot. Untested - let me know if it's not quite right. > > Phil >
Thanks a lot, I'll test that and let you know. SEB
<<attachment: sebastien_petitdemange.vcf>>
_______________________________________________ PyQt mailing list PyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt