|
GDB (xrefs)
|
#include "defs.h"#include "exceptions.h"#include "gdbthread.h"#include "inferior.h"#include "python-internal.h"Go to the source code of this file.
| #define THPY_REQUIRE_VALID | ( | Thread | ) |
do { \ if (!Thread->thread) \ { \ PyErr_SetString (PyExc_RuntimeError, \ _("Thread no longer exists.")); \ return NULL; \ } \ } while (0)
Definition at line 30 of file py-infthread.c.
Referenced by thpy_get_name(), thpy_get_num(), thpy_get_ptid(), thpy_is_exited(), thpy_is_running(), thpy_is_stopped(), and thpy_switch().
| static PyTypeObject thread_object_type CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF | ( | "thread_object" | ) | [static] |
| thread_object* create_thread_object | ( | struct thread_info * | tp | ) |
Definition at line 43 of file py-infthread.c.
References find_inferior_object(), thread_object::inf_obj, thread_info::ptid, ptid_get_pid(), thread_object::thread, threadlist_entry::thread_obj, and thread_object_type.
Referenced by add_thread_object().
| int gdbpy_initialize_thread | ( | void | ) |
Definition at line 259 of file py-infthread.c.
References gdb_module, gdb_pymodule_addobject(), and thread_object_type.
Referenced by _initialize_python().
| PyObject* gdbpy_selected_thread | ( | PyObject * | self, |
| PyObject * | args | ||
| ) |
Definition at line 242 of file py-infthread.c.
References find_thread_object(), and inferior_ptid.
| static void thpy_dealloc | ( | PyObject * | self | ) | [static] |
Definition at line 60 of file py-infthread.c.
References Py_DECREF.
| static PyObject* thpy_get_name | ( | PyObject * | self, |
| void * | ignore | ||
| ) | [static] |
Definition at line 67 of file py-infthread.c.
References name, thread_info::name, target_thread_name(), THPY_REQUIRE_VALID, thread_object::thread, and threadlist_entry::thread_obj.
| static PyObject* thpy_get_num | ( | PyObject * | self, |
| void * | closure | ||
| ) | [static] |
Definition at line 124 of file py-infthread.c.
References thread_info::num, THPY_REQUIRE_VALID, thread_object::thread, and threadlist_entry::thread_obj.
| static PyObject* thpy_get_ptid | ( | PyObject * | self, |
| void * | closure | ||
| ) | [static] |
Definition at line 136 of file py-infthread.c.
References thread_info::ptid, ptid_get_lwp(), ptid_get_pid(), ptid_get_tid(), THPY_REQUIRE_VALID, thread_object::thread, and threadlist_entry::thread_obj.
| static PyObject* thpy_is_exited | ( | PyObject * | self, |
| PyObject * | args | ||
| ) | [static] |
Definition at line 212 of file py-infthread.c.
References is_exited(), thread_info::ptid, THPY_REQUIRE_VALID, and thread_object::thread.
| static PyObject* thpy_is_running | ( | PyObject * | self, |
| PyObject * | args | ||
| ) | [static] |
Definition at line 197 of file py-infthread.c.
References is_running(), thread_info::ptid, THPY_REQUIRE_VALID, and thread_object::thread.
| static PyObject* thpy_is_stopped | ( | PyObject * | self, |
| PyObject * | args | ||
| ) | [static] |
Definition at line 182 of file py-infthread.c.
References is_stopped(), thread_info::ptid, THPY_REQUIRE_VALID, and thread_object::thread.
| static PyObject* thpy_is_valid | ( | PyObject * | self, |
| PyObject * | args | ||
| ) | [static] |
Definition at line 229 of file py-infthread.c.
References thread_object::thread.
| static int thpy_set_name | ( | PyObject * | self, |
| PyObject * | newvalue, | ||
| void * | ignore | ||
| ) | [static] |
Definition at line 85 of file py-infthread.c.
References _, gdbpy_is_string(), name, thread_info::name, python_string_to_host_string(), thread_object::thread, threadlist_entry::thread_obj, and xfree().
| static PyObject* thpy_switch | ( | PyObject * | self, |
| PyObject * | args | ||
| ) | [static] |
Definition at line 163 of file py-infthread.c.
References GDB_PY_HANDLE_EXCEPTION, thread_info::ptid, RETURN_MASK_ALL, switch_to_thread(), THPY_REQUIRE_VALID, thread_object::thread, threadlist_entry::thread_obj, and TRY_CATCH.
PyGetSetDef thread_object_getset[] [static] |
{
{ "name", thpy_get_name, thpy_set_name,
"The name of the thread, as set by the user or the OS.", NULL },
{ "num", thpy_get_num, NULL, "ID of the thread, as assigned by GDB.", NULL },
{ "ptid", thpy_get_ptid, NULL, "ID of the thread, as assigned by the OS.",
NULL },
{ NULL }
}
Definition at line 270 of file py-infthread.c.
PyMethodDef thread_object_methods[] [static] |
{
{ "is_valid", thpy_is_valid, METH_NOARGS,
"is_valid () -> Boolean.\n\
Return true if this inferior thread is valid, false if not." },
{ "switch", thpy_switch, METH_NOARGS,
"switch ()\n\
Makes this the GDB selected thread." },
{ "is_stopped", thpy_is_stopped, METH_NOARGS,
"is_stopped () -> Boolean\n\
Return whether the thread is stopped." },
{ "is_running", thpy_is_running, METH_NOARGS,
"is_running () -> Boolean\n\
Return whether the thread is running." },
{ "is_exited", thpy_is_exited, METH_NOARGS,
"is_exited () -> Boolean\n\
Return whether the thread is exited." },
{ NULL }
}
Definition at line 281 of file py-infthread.c.
PyTypeObject thread_object_type [static] |
Definition at line 302 of file py-infthread.c.
Referenced by create_thread_object(), and gdbpy_initialize_thread().
1.7.6.1