Hi,

I have a custom exception in C++ that I would like to use in Python.

Let's call it MyException with custom constructor and members (an implementation is below).
I would like to expose it to python so that I can raise it:

> raise MyException(-1, 'tragic error')

The perfect way that I can imagine is to tell boost::python to base the class on PyExc_Exception, but that doesn't seem to work. Furthermore I have found various solutions how to translate exceptions thrown in C++ into proper Python exceptions, but in my case these solutions sit at the wrong place.

I would like to avoid to create a corresponding python class to the C++ exception, because there would be added effort to keep the two descriptions consistent.

I am happy about any comments and questions!

Cheers
Martin


class MyException: public std::exception {
  MyException();
  MyException(int code, const std::string &string);

  int code();
  const char* what();

  int errorCode;
  std::string errorMessage;
};
_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig@python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig

Reply via email to