番兵オブジェクト
****************

PyTypeObject PySentinel_Type

   この "PyTypeObject" のインスタンスは、Python の "sentinel" 型を表し
   ます。 "sentinel" と同じオブジェクトです。

   Added in version 3.15.

int PySentinel_Check(PyObject *o)

   *o* が "sentinel" オブジェクトか、そのサブタイプのオブジェクトであ
   れば真を返します。 現在の "sentinel" 型はサブクラスを認めないため、
   この判定は型の完全一致を調べるものになります。 将来の Python ではサ
   ブタイプを認める可能性があります。 この関数は常に成功します。

   Added in version 3.15.

int PySentinel_CheckExact(PyObject *o)

   *o* が "sentinel" オブジェクトであり、サブタイプのオブジェクトでな
   ければ真を返します。 現在の "sentinel" 型はサブクラスを認めません。
   将来の Python ではサブタイプを認める可能性があります。 この関数は常
   に成功します。

   Added in version 3.15.

PyObject *PySentinel_New(const char *name, const char *module_name, const char *repr)
    *戻り値: 新しい参照。*

   "__name__" を *name* に、"__module__" を *module_name* に設定した、
   新しい "sentinel" オブジェクトを返します。 *name* は "NULL" であっ
   てはなりません。 *module_name* が "NULL" なら、"__module__" は
   "None" になります。 *repr* が "NULL" なら、"repr()" は "__name__"
   を返します。 失敗すると例外を設定して "NULL" を返します。

   pickle 化を機能させるには、*module_name* がインポート可能なモジュー
   ルの名前であり、そのモジュールから *name* に一致するパスで番兵にア
   クセスできなければなりません。 pickle は *name* を *module_name* 内
   のグローバル変数名として扱います ("object.__reduce__()" を参照)。

   Added in version 3.15.
