浮動小数点型オブジェクト (floating point object)
************************************************

type PyFloatObject

   この "PyObject" のサブタイプは Python 浮動小数点オブジェクトを表現
   します。

PyTypeObject PyFloat_Type
    * Part of the Stable ABI.*

   この "PyTypeObject" のインスタンスは Python 浮動小数点型を表現しま
   す。これは Python レイヤにおける "float" と同じオブジェクトです。

int PyFloat_Check(PyObject *p)

   引数が "PyFloatObject" か "PyFloatObject" のサブタイプであるときに
   真を返します。この関数は常に成功します。

int PyFloat_CheckExact(PyObject *p)

   引数が "PyFloatObject" であるが "PyFloatObject" のサブタイプでない
   ときに真を返します。この関数は常に成功します。

PyObject *PyFloat_FromString(PyObject *str)
    *Return value: New reference.** Part of the Stable ABI.*

   *str* の文字列値をもとに "PyFloatObject" オブジェクトを生成します。
   失敗すると "NULL" を返します。

PyObject *PyFloat_FromDouble(double v)
    *Return value: New reference.** Part of the Stable ABI.*

   *v* から "PyFloatObject" オブジェクトを生成して返します。 失敗する
   と "NULL" を返します。

double PyFloat_AsDouble(PyObject *pyfloat)
    * Part of the Stable ABI.*

   *pyfloat* の指す値を、 C の "double" 型表現で返します。 *pyfloat*
   が Python 浮動小数点オブジェクトではなく、かつ "__float__()" メソッ
   ドを持っていれば、*pyfloat* を浮動小数点に変換するためにこのメソッ
   ドが最初に呼ばれます。 "__float__()" が定義されていない場合は、
   "__index__()" にフォールバックされます。このメソッドは失敗した場合
   "-1.0" を返します。そのため呼び出し元は "PyErr_Occurred()" を呼んで
   エラーをチェックすべきです。

   バージョン 3.8 で変更: 可能であれば "__index__()" を使うようになり
   ました。

double PyFloat_AS_DOUBLE(PyObject *pyfloat)

   *pyfloat* の指す値を、 C の "double" 型表現で返しますが、エラーチェ
   ックを行いません。

PyObject *PyFloat_GetInfo(void)
    *Return value: New reference.** Part of the Stable ABI.*

   float の精度、最小値、最大値に関する情報を含む structseq インスタン
   スを返します。これは、 "float.h" ファイルの薄いラッパーです。

double PyFloat_GetMax()
    * Part of the Stable ABI.*

   float の表現できる最大限解値 *DBL_MAX* を C の "double" 型で返しま
   す。

double PyFloat_GetMin()
    * Part of the Stable ABI.*

   float の正規化された最小の正の値 *DBL_MIN* を C の "double" 型で返
   します。
