リフレクション
**************

PyObject* PyEval_GetBuiltins()
    *Return value: Borrowed reference.*

   現在の実行フレーム内のビルトインの辞書か、もし実行中のフレームがな
   ければスレッド状態のインタプリタのビルトイン辞書を返します。

PyObject* PyEval_GetLocals()
    *Return value: Borrowed reference.*

   現在の実行フレーム内のローカル変数の辞書か、実行中のフレームがなけ
   れば "NULL" を返します。

PyObject* PyEval_GetGlobals()
    *Return value: Borrowed reference.*

   現在の実行フレーム内のグローバル変数の辞書か、実行中のフレームがな
   ければ "NULL" を返します。

PyFrameObject* PyEval_GetFrame()
    *Return value: Borrowed reference.*

   現在のスレッド状態のフレームを返します。現在実行中のフレームがなけ
   れば "NULL" を返します。

int PyFrame_GetLineNumber(PyFrameObject *frame)

   *frame* が現在実行している行番号を返します。

const char* PyEval_GetFuncName(PyObject *func)

   *func* が関数、クラス、インスタンスオブジェクトであればその名前を、
   そうでなければ *func* の型を返します。

const char* PyEval_GetFuncDesc(PyObject *func)

   *func* の型に依存する、解説文字列(description string)を返します。戻
   り値は、関数とメソッドに対しては "()", " constructor", " instance",
   " object" です。 "PyEval_GetFuncName()" と連結された結果、 *func*
   の解説になります。
