Відповісти

Увага: ця гілка була неактивною принаймні 365 днів!
Будь ласка, подумайте про створення нової гілки, якщо ви не впевнені абсолютно, що хочете відновити обговорення тут.
Ім’я:
Електронна пошта:
Тема:
Іконка:

Код перевірки:
Будь ласка, введіть символи, вказані на малюнку
прослухати / Спробувати інший малюнок

Будь ласка, введіть символи, вказані на малюнку:

скорочення: alt+s — надіслати допис, alt+p — попередній перегляд


Стислий вміст гілки

Автор: Сергій Лисовенко
« : 2012-03-16 09:45:00 »

Воно може й працює, але ж тон не хороший.
PyFile_Check - інтуїтивно зрозуміло і коротко.
В даному випадку простіше зробити так само, як робить SWIG: забути про FILE* взагалі.
Автор: Re.
« : 2012-03-13 21:24:13 »

PyFile_Check та PyFile_CheckExact ? Без них же взагалі не можливо написати функцію, яка використовує файловий об'єкт (ну хіба працюватиме на удачу: або сегфолт, або корисна дія).
Це вам справді тре?
Спробуйте:
   extern PyTypeObject PyIOBase_Type;
    if(PyObject_IsInstance(obj, (PyObject *)&PyIOBase_Type) )
Автор: Сергій Лисовенко
« : 2012-03-13 19:22:50 »

Те, що є тепер:
http://docs.python.org/release/2.7/c-api/file.html
жахіття, яке пропонує команда розробників Python 3:
http://docs.python.org/release/3.0.1/c-api/file.html
Не зрозуміло з якого дива розробники ніби кросплатформової мови раптом перейшли на файлові дескриптори? Збільшення продуктивності це явно не дасть, а от написати обгортку для функції, яка використовує FILE* стане явно проблематично. Крім того не зрозуміло з якого дива можна додуматись прибрати такі важливі функції, як PyFile_Check та PyFile_CheckExact ? Без них же взагалі не можливо написати функцію, яка використовує файловий об'єкт (ну хіба працюватиме на удачу: або сегфолт, або корисна дія).