Boost logo

Boost :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2001-09-27 15:33:26

----- Original Message -----
From: " Kerim Borchaev ( WarKiD ) " <warkid_at_[hidden]>

> Is there a way to raise a python exception from an extension?
> Best regards,
> Kerim mailto:warkid_at_[hidden]

There are two ways:

1. Raise an exception derived from std::exception. It will be translated to
a Python exception (see handle_exception() in conversions.cpp).

2. Use the standard Python interface to set an exception, then throw
boost::python::error_already_set(). E.g.:

        const char message[] = "value out of range for Python int";
        PyErr_SetString(PyExc_ValueError, message);
        throw boost::python::error_already_set();


       David Abrahams, C++ library designer

        C++ Booster (
          email: david.abrahams_at_[hidden]

Boost list run by bdawes at, gregod at, cpdaniel at, john at