1.. highlightlang:: c 2 3.. _reflection: 4 5Reflection 6========== 7 8.. c:function:: PyObject* PyEval_GetBuiltins() 9 10 Return a dictionary of the builtins in the current execution frame, 11 or the interpreter of the thread state if no frame is currently executing. 12 13 14.. c:function:: PyObject* PyEval_GetLocals() 15 16 Return a dictionary of the local variables in the current execution frame, 17 or *NULL* if no frame is currently executing. 18 19 20.. c:function:: PyObject* PyEval_GetGlobals() 21 22 Return a dictionary of the global variables in the current execution frame, 23 or *NULL* if no frame is currently executing. 24 25 26.. c:function:: PyFrameObject* PyEval_GetFrame() 27 28 Return the current thread state's frame, which is *NULL* if no frame is 29 currently executing. 30 31 32.. c:function:: int PyFrame_GetLineNumber(PyFrameObject *frame) 33 34 Return the line number that *frame* is currently executing. 35 36 37.. c:function:: int PyEval_GetRestricted() 38 39 If there is a current frame and it is executing in restricted mode, return true, 40 otherwise false. 41 42 43.. c:function:: const char* PyEval_GetFuncName(PyObject *func) 44 45 Return the name of *func* if it is a function, class or instance object, else the 46 name of *func*\s type. 47 48 49.. c:function:: const char* PyEval_GetFuncDesc(PyObject *func) 50 51 Return a description string, depending on the type of *func*. 52 Return values include "()" for functions and methods, " constructor", 53 " instance", and " object". Concatenated with the result of 54 :c:func:`PyEval_GetFuncName`, the result will be a description of 55 *func*. 56