Réflexion
*********

PyObject *PyEval_GetBuiltins(void)
    *Valeur de retour : référence empruntée.** Part of the Stable
   ABI.*

   Renvoie un dictionnaire des fonctions natives de la *frame* en
   cours d'exécution, ou si aucune *frame* n'est exécutée, les
   fonctions natives du *thread* indiqué par le *thread state*.

PyObject *PyEval_GetLocals(void)
    *Valeur de retour : référence empruntée.** Part of the 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)
    *Valeur de retour : référence empruntée.** Part of the Stable
   ABI.*

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

PyFrameObject *PyEval_GetFrame(void)
    *Valeur de retour : référence empruntée.** Part of the 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)
    * Part of the Stable ABI.*

   Renvoie le nom de *func* s'il s'agit d'une fonction, d'une classe
   ou d'un objet d'instance, sinon le nom du type de *func*

const char *PyEval_GetFuncDesc(PyObject *func)
    * Part of the Stable ABI.*

   Renvoie une description en chaîne de caractères, en fonction du
   type de *func*. Les valeurs renvoyées peuvent être ""()"" pour les
   fonction et les méthodes, "\" constructor\"", "\" instance\"", "\"
   object\"". Concaténé avec le résultat de "PyEval_GetFuncName()", le
   résultat sera une description de *func*
