# リフレクション

PyObject *PyEval_GetBuiltins(void)
  戻り値: 借用参照。 次に属します: Stable ABI.

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

PyObject *PyEval_GetLocals(void)
  戻り値: 借用参照。 次に属します: Stable ABI.

  Return a dictionary of the local variables in the current execution frame, or `NULL` if no frame is currently executing.

PyObject *PyEval_GetGlobals(void)
  戻り値: 借用参照。 次に属します: Stable ABI.

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

PyFrameObject *PyEval_GetFrame(void)
  戻り値: 借用参照。 次に属します: Stable ABI.

  Return the current thread state's frame, which is `NULL` if no frame is currently executing.

  See also `PyThreadState_GetFrame()`.

const char *PyEval_GetFuncName(PyObject *func)
  次に属します: Stable ABI.

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

const char *PyEval_GetFuncDesc(PyObject *func)
  次に属します: Stable ABI.

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