blob: 96893652f730cc5c3ed09ea3ace1ca5a65f5a755 [file] [log] [blame]
Georg Brandl54a3faa2008-01-20 09:30:57 +00001.. highlightlang:: c
2
3.. _reflection:
4
5Reflection
6==========
7
Georg Brandl60203b42010-10-06 10:11:56 +00008.. c:function:: PyObject* PyEval_GetBuiltins()
Georg Brandl54a3faa2008-01-20 09:30:57 +00009
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
Georg Brandl60203b42010-10-06 10:11:56 +000014.. c:function:: PyObject* PyEval_GetLocals()
Georg Brandl54a3faa2008-01-20 09:30:57 +000015
16 Return a dictionary of the local variables in the current execution frame,
17 or *NULL* if no frame is currently executing.
Georg Brandl48310cd2009-01-03 21:18:54 +000018
Georg Brandl54a3faa2008-01-20 09:30:57 +000019
Georg Brandl60203b42010-10-06 10:11:56 +000020.. c:function:: PyObject* PyEval_GetGlobals()
Georg Brandl54a3faa2008-01-20 09:30:57 +000021
22 Return a dictionary of the global variables in the current execution frame,
23 or *NULL* if no frame is currently executing.
24
25
Georg Brandl60203b42010-10-06 10:11:56 +000026.. c:function:: PyFrameObject* PyEval_GetFrame()
Georg Brandl54a3faa2008-01-20 09:30:57 +000027
28 Return the current thread state's frame, which is *NULL* if no frame is
29 currently executing.
30
31
Georg Brandl60203b42010-10-06 10:11:56 +000032.. c:function:: int PyFrame_GetLineNumber(PyFrameObject *frame)
Alexandre Vassalotti7b82b402009-07-21 04:30:03 +000033
34 Return the line number that *frame* is currently executing.
35
36
Georg Brandl60203b42010-10-06 10:11:56 +000037.. c:function:: const char* PyEval_GetFuncName(PyObject *func)
Georg Brandl54a3faa2008-01-20 09:30:57 +000038
39 Return the name of *func* if it is a function, class or instance object, else the
40 name of *func*\s type.
41
42
Georg Brandl60203b42010-10-06 10:11:56 +000043.. c:function:: const char* PyEval_GetFuncDesc(PyObject *func)
Georg Brandl54a3faa2008-01-20 09:30:57 +000044
45 Return a description string, depending on the type of *func*.
46 Return values include "()" for functions and methods, " constructor",
47 " instance", and " object". Concatenated with the result of
Georg Brandl60203b42010-10-06 10:11:56 +000048 :c:func:`PyEval_GetFuncName`, the result will be a description of
Georg Brandl54a3faa2008-01-20 09:30:57 +000049 *func*.