Объекты Sentinel¶Sentinel objects
-
PyTypeObject PySentinel_Type¶
Этот экземпляр
PyTypeObjectпредставляет тип Pythonsentinel. Он является тем же объектом, что иsentinel.Добавлено в версии 3.15.
-
int PySentinel_Check(PyObject *o)¶
Возвращает true, если o является объектом
sentinelили подтипом. Типsentinelв настоящее время не допускает подклассов, поэтому эта проверка точна. Будущие версии Python могут разрешить создание подтипов. Эта функция всегда завершается успешно.Добавлено в версии 3.15.
-
int PySentinel_CheckExact(PyObject *o)¶
Возвращает true, если o является объектом
sentinel, но не подтипом. Типsentinelв настоящее время не допускает подклассов. Будущие версии Python могут разрешить создание подтипов. Эта функция всегда завершается успешно.Добавлено в версии 3.15.
-
PyObject *PySentinel_New(const char *name, const char *module_name, const char *repr)¶
- Возвращаемое значение: новая ссылка.
Возвращает новый объект
sentinel, в котором__name__установлено в name, а__module__установлено в module_name. name не должно бытьNULL. Если module_name равноNULL,__module__устанавливается вNone. Если repr равноNULL,repr()возвращает__name__. При неудаче возвращаетNULLс установленным исключением.Для работы сериализации (pickling) module_name должно быть именем импортируемого модуля, а sentinel должен быть доступен из этого модуля по пути, соответствующему name. Pickle рассматривает name как имя глобальной переменной в module_name (см.
object.__reduce__()).Добавлено в версии 3.15.