[PyKDE] SIP Support for C++ Operators and Exceptions

Phil Thompson phil at river-bank.demon.co.uk
Wed Apr 23 23:41:00 BST 2003


On Wednesday 23 April 2003 9:03 pm, Jim Bublitz wrote:
> On 23-Apr-03 Phil Thompson wrote:
> > Tonight's SIP snapshot supports C++ operators and exceptions.
> >
> > Thanks to Oliver Kohlbacher for contributing the exception
> > support (enabled through the new -e flag to SIP). However, my
> > integration of it is completely untested - over to you Oliver.
>
> Could you or Oliver provide a little more detail? For example, if
> exception support is enabled, will C++ exceptions be converted to
> Python exceptions? Is this automatically global support, or does it
> need to be enabled per module, class, method, ? with a sip keyword?
> Thanks in advance.

The -e flag enables the generation of try/catch blocks around *all* calls to 
wrapped functions for that module. You can include throw specifiers in .sip 
files. eg.

	void foo() throw (bar);

"bar" must also be defined as a wrapped class and is converted to a Python 
object when caught.

Try running with the -e flag added and have a look at the generated code.

Phil




More information about the PyQt mailing list