2012-06-18 3 views
1

Может быть, я что-то не хватаю, но вот проблема:Как конвертировать PyFrameObject в PyObject

Я трассировка коды питона расширений C, и моя функция следа есть PyFrameObject * рама. Теперь я хочу обработать фрейм кодом Python (встроенный или преобразованный в C by Cython), но он имеет дело с PyObject *.

Как преобразовать PyFrameObject * в PyObject *? Я не нашел подходящую функцию преобразования в frameobject.h.

Спасибо.

ответ

2

Используйте бросок:

PyObject *myObject = (PyObject *)myFrameObject 

Это является стандартным для API Python C; все, что «наследует» от PyObject, имеет PyObject_VAR_HEAD в верхней части объекта, поэтому указатель на объект можно преобразовать в указатель на PyObject.

 Смежные вопросы

  • Нет связанных вопросов^_^