SWIG: создание отчетов об исключениях Python из кода C ++

Я использую библиотеку, которая указывает в документации API для определения класса, унаследованного от определенного класса библиотеки. Сама библиотека написана на C ++, а привязки к Python генерируются с помощью SWIG. Проблема в том, что когда я запускаю свой код Python, независимо от того, какое исключение выбрасывает Python, я получаю сообщение об ошибке: «Завершить вызов после выброса экземпляра Swig :: DirectorMethodException».

Я хотел бы, чтобы это исключение было вызвано кодом Python, чтобы сообщалось при выполнении моей программы. Например, те случаи, когда я получаю ZeroDivisionError.

Я попытался немного взломать, следуя методу, описанному в документации SWIG по адресу http://www.swig.org/Doc2.0/Python.html#Python_nn36 но безуспешно. Я по-прежнему получаю то же сообщение «завершение вызова после выброса экземпляра 'Swig :: DirectorMethodException'», независимо от того, что я помещаю в файл module.i.

Может кто-нибудь, пожалуйста, подскажет, как это сделать проблема, так что исключения Python сообщаются как есть?

6
задан Madhusudan.C.S 26 January 2011 в 23:47
поделиться