summaryrefslogtreecommitdiff
path: root/py/modules/IcePy/Util.h
diff options
context:
space:
mode:
Diffstat (limited to 'py/modules/IcePy/Util.h')
-rw-r--r--py/modules/IcePy/Util.h29
1 files changed, 28 insertions, 1 deletions
diff --git a/py/modules/IcePy/Util.h b/py/modules/IcePy/Util.h
index 2844b5e68b2..b004b86916f 100644
--- a/py/modules/IcePy/Util.h
+++ b/py/modules/IcePy/Util.h
@@ -13,6 +13,7 @@
#include <Python.h>
#include <Ice/BuiltinSequences.h>
#include <Ice/Current.h>
+#include <Ice/Exception.h>
namespace IcePy
{
@@ -99,10 +100,36 @@ std::string scopedToName(const std::string&);
std::string fixIdent(const std::string&);
//
-// Returns a borrowed reference to the Python type object corresponding to the given Python type name.
+// Returns a borrowed reference to the Python type object corresponding
+// to the given Python type name.
//
PyObject* lookupType(const std::string&);
+//
+// Returns the current Python exception.
+//
+PyObject* getPythonException(bool = true);
+
+//
+// Creates an exception instance of the given type.
+//
+PyObject* createExceptionInstance(PyObject*);
+
+//
+// Converts an Ice exception into a Python exception.
+//
+void setPythonException(const Ice::Exception&);
+
+//
+// Converts a Python exception into an Ice exception and throws it.
+//
+void throwPythonException(PyObject* = NULL);
+
+//
+// Handle the SystemExit exception.
+//
+void handleSystemExit();
+
}
#endif