Reflection

PyObject* PyEval_GetBuiltins()
Return value: Borrowed reference.

Return a dictionary of the builtins in the current execution frame, or the interpreter of the thread state if no frame is currently executing.

PyObject* PyEval_GetLocals()
Return value: Borrowed reference.

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

PyObject* PyEval_GetGlobals()
Return value: Borrowed reference.

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

PyFrameObject* PyEval_GetFrame()
Return value: Borrowed reference.

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

int PyFrame_GetLineNumber(PyFrameObject *frame)

Return the line number that frame is currently executing.

int PyEval_GetRestricted()

If there is a current frame and it is executing in restricted mode, return true, otherwise false.

const char* PyEval_GetFuncName(PyObject *func)

Return the name of func if it is a function, class or instance object, else the name of funcs type.

const char* PyEval_GetFuncDesc(PyObject *func)

Return a description string, depending on the type of func. Return values include 《()》 for functions and methods, 》 constructor》, 》 instance》, and 》 object》. Concatenated with the result of PyEval_GetFuncName(), the result will be a description of func.