Reflexión
*********

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

   Retorna un diccionario de las construcciones en el marco de
   ejecución actual, o el intérprete del estado del hilo si no se está
   ejecutando ningún marco actualmente.

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

   Retorna un diccionario de las variables locales en el marco de
   ejecución actual, o "NULL" si actualmente no se está ejecutando
   ningún marco.

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

   Retorna un diccionario de las variables globales en el marco de
   ejecución actual, o "NULL" si actualmente no se está ejecutando
   ningún marco.

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

   Retorna el marco del estado del hilo actual, que es "NULL" si
   actualmente no se está ejecutando ningún marco.

int PyFrame_GetLineNumber(PyFrameObject *frame)

   Retorna el número de línea que *frame* está ejecutando actualmente.

const char* PyEval_GetFuncName(PyObject *func)

   Retorna el nombre de *func* si es una función, clase u objeto de
   instancia; de lo contrario, el nombre del tipo *func*s.

const char* PyEval_GetFuncDesc(PyObject *func)

   Retorna una cadena de caracteres de descripción, según el tipo de
   *func*. Los valores de retorno incluyen "()" para funciones y
   métodos, "constructor", "instancia" y "objeto". Concatenado con el
   resultado de "PyEval_GetFuncName()", el resultado será una
   descripción de *func*.
