Previous: Objfiles In Python, Up: Python API
When the debugged program stops, gdb is able to analyze its call
stack (see Stack frames). The gdb.Frame class
represents a frame in the stack. A gdb.Frame object is only valid
while its corresponding frame exists in the inferior's stack. If you try
to use an invalid frame object, gdb will throw a RuntimeError
exception.
Two gdb.Frame objects can be compared for equality with the ==
operator, like:
(gdb) python print gdb.newest_frame() == gdb.selected_frame ()
True
The following frame-related functions are available in the gdb module:
Return a string explaining the reason why gdb stopped unwinding frames, as expressed by the given reason code (an integer, see the
unwind_stop_reasonmethod further down in this section).
A gdb.Frame object has the following methods:
Returns true if the
gdb.Frameobject is valid, false if not. A frame object can become invalid if the frame it refers to doesn't exist anymore in the inferior. Allgdb.Framemethods will throw an exception if it is invalid at the time the method is called.
Returns the type of the frame. The value can be one of
gdb.NORMAL_FRAME,gdb.DUMMY_FRAME,gdb.SIGTRAMP_FRAMEorgdb.SENTINEL_FRAME.