|
GDB (xrefs)
|
#include "defs.h"#include "objfiles.h"#include "symtab.h"#include "language.h"#include "arch-utils.h"#include "python.h"#include "ui-out.h"#include "valprint.h"#include "annotate.h"#include "hashtab.h"#include "demangle.h"#include "mi/mi-cmds.h"#include "python-internal.h"#include "py-ref.h"#include "common/gdb_optional.h"Go to the source code of this file.
Enumerations | |
| enum | mi_print_types { MI_PRINT_ARGS, MI_PRINT_LOCALS } |
Functions | |
| static enum ext_lang_bt_status | extract_sym (PyObject *obj, gdb::unique_xmalloc_ptr< char > *name, struct symbol **sym, struct block **sym_block, const struct language_defn **language) |
| static enum ext_lang_bt_status | extract_value (PyObject *obj, struct value **value) |
| static int | mi_should_print (struct symbol *sym, enum mi_print_types type) |
| static enum ext_lang_bt_status | py_print_type (struct ui_out *out, struct value *val) |
| static enum ext_lang_bt_status | py_print_value (struct ui_out *out, struct value *val, const struct value_print_options *opts, int indent, enum ext_lang_frame_args args_type, const struct language_defn *language) |
| static PyObject * | get_py_iter_from_func (PyObject *filter, const char *func) |
| static enum ext_lang_bt_status | py_print_single_arg (struct ui_out *out, const char *sym_name, struct frame_arg *fa, struct value *fv, const struct value_print_options *opts, enum ext_lang_frame_args args_type, int print_args_field, const struct language_defn *language) |
| static enum ext_lang_bt_status | enumerate_args (PyObject *iter, struct ui_out *out, enum ext_lang_frame_args args_type, int print_args_field, struct frame_info *frame) |
| static enum ext_lang_bt_status | enumerate_locals (PyObject *iter, struct ui_out *out, int indent, enum ext_lang_frame_args args_type, int print_args_field, struct frame_info *frame) |
| static enum ext_lang_bt_status | py_mi_print_variables (PyObject *filter, struct ui_out *out, struct value_print_options *opts, enum ext_lang_frame_args args_type, struct frame_info *frame) |
| static enum ext_lang_bt_status | py_print_locals (PyObject *filter, struct ui_out *out, enum ext_lang_frame_args args_type, int indent, struct frame_info *frame) |
| static enum ext_lang_bt_status | py_print_args (PyObject *filter, struct ui_out *out, enum ext_lang_frame_args args_type, struct frame_info *frame) |
| static enum ext_lang_bt_status | py_print_frame (PyObject *filter, int flags, enum ext_lang_frame_args args_type, struct ui_out *out, int indent, htab_t levels_printed) |
| static PyObject * | bootstrap_python_frame_filters (struct frame_info *frame, int frame_low, int frame_high) |
| enum ext_lang_bt_status | gdbpy_apply_frame_filter (const struct extension_language_defn *extlang, struct frame_info *frame, int flags, enum ext_lang_frame_args args_type, struct ui_out *out, int frame_low, int frame_high) |
| enum mi_print_types |
| Enumerator | |
|---|---|
| MI_PRINT_ARGS | |
| MI_PRINT_LOCALS | |
Definition at line 36 of file py-framefilter.c.
|
static |
Definition at line 1280 of file py-framefilter.c.
References frame_info_to_frame_object(), gdb::ref_ptr< T, Policy >::get(), PyObject_GetAttrString, and gdb::ref_ptr< T, Policy >::release().
Referenced by gdbpy_apply_frame_filter().
|
static |
Definition at line 478 of file py-framefilter.c.
References _, annotate_arg_end(), annotate_frame_args(), CATCH, CLI_SCALAR_VALUES, value_print_options::deref_ref, END_CATCH, frame_arg::entry_kind, frame_arg::error, EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, extract_sym(), extract_value(), gdbpy_convert_exception(), get_user_print_options(), ui_out::is_mi_like_p(), MI_PRINT_ARGS, mi_should_print(), print_entry_values_no, print_entry_values_only, py_print_single_arg(), read_frame_arg(), RETURN_MASK_ALL, value_print_options::summary, frame_arg::sym, ui_out::text(), TRY, frame_arg::val, ui_out::wrap_hint(), and xfree().
Referenced by py_mi_print_variables(), and py_print_args().
|
static |
Definition at line 673 of file py-framefilter.c.
References CATCH, value_print_options::deref_ref, gdb::optional< T >::emplace(), END_CATCH, EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, extract_sym(), extract_value(), ui_out::field_string(), gdbpy_convert_exception(), gdb::ref_ptr< T, Policy >::get(), get_user_print_options(), ui_out::is_mi_like_p(), MI_PRINT_LOCALS, MI_PRINT_SIMPLE_VALUES, mi_should_print(), NO_VALUES, py_print_type(), py_print_value(), read_var_value(), RETURN_MASK_ERROR, ui_out::spaces(), ui_out::text(), and TRY.
Referenced by py_mi_print_variables(), and py_print_locals().
|
static |
Definition at line 57 of file py-framefilter.c.
References _, current_language, EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, gdbpy_is_string(), gdb::ref_ptr< T, Policy >::get(), language_def(), language_mode_auto, name, PyObject_CallMethod, python_language, python_string_to_host_string(), SYMBOL_LANGUAGE, symbol_object_to_symbol(), and SYMBOL_PRINT_NAME.
Referenced by enumerate_args(), and enumerate_locals().
|
static |
Definition at line 128 of file py-framefilter.c.
References convert_value_from_python(), EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, gdb::ref_ptr< T, Policy >::get(), PyObject_CallMethod, and PyObject_HasAttrString.
Referenced by enumerate_args(), and enumerate_locals().
| enum ext_lang_bt_status gdbpy_apply_frame_filter | ( | const struct extension_language_defn * | extlang, |
| struct frame_info * | frame, | ||
| int | flags, | ||
| enum ext_lang_frame_args | args_type, | ||
| struct ui_out * | out, | ||
| int | frame_low, | ||
| int | frame_high | ||
| ) |
Definition at line 1334 of file py-framefilter.c.
References bootstrap_python_frame_filters(), CATCH, current_language, END_CATCH, EXT_LANG_BT_ERROR, EXT_LANG_BT_NO_FILTERS, flags, gdb_python_initialized, gdbpy_print_stack(), gdb::ref_ptr< T, Policy >::get(), get_frame_arch(), py_print_frame(), RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 304 of file py-framefilter.c.
References func, gdb::ref_ptr< T, Policy >::get(), PyObject_CallMethod, PyObject_HasAttrString, and gdb::ref_ptr< T, Policy >::release().
Referenced by py_mi_print_variables(), py_print_args(), py_print_frame(), and py_print_locals().
|
static |
Definition at line 166 of file py-framefilter.c.
References LOC_ARG, LOC_BLOCK, LOC_COMPUTED, LOC_CONST, LOC_CONST_BYTES, LOC_LABEL, LOC_LOCAL, LOC_OPTIMIZED_OUT, LOC_REF_ARG, LOC_REGISTER, LOC_REGPARM_ADDR, LOC_STATIC, LOC_TYPEDEF, LOC_UNDEF, LOC_UNRESOLVED, MI_PRINT_LOCALS, SYMBOL_CLASS, and SYMBOL_IS_ARGUMENT.
Referenced by enumerate_args(), and enumerate_locals().
|
static |
Definition at line 804 of file py-framefilter.c.
References enumerate_args(), enumerate_locals(), EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, gdb::ref_ptr< T, Policy >::get(), and get_py_iter_from_func().
Referenced by py_print_frame().
|
static |
Definition at line 863 of file py-framefilter.c.
References annotate_frame_args(), CATCH, END_CATCH, enumerate_args(), EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, gdbpy_convert_exception(), gdb::ref_ptr< T, Policy >::get(), get_py_iter_from_func(), ui_out::is_mi_like_p(), RETURN_MASK_ALL, ui_out::text(), and TRY.
Referenced by py_print_frame().
|
static |
Definition at line 923 of file py-framefilter.c.
References _, frame_info::addr, value_print_options::addressprint, annotate_frame_address(), annotate_frame_address_end(), annotate_frame_begin(), annotate_frame_end(), annotate_frame_function_name(), annotate_frame_source_begin(), annotate_frame_source_file(), annotate_frame_source_file_end(), annotate_frame_source_line(), CATCH, gdb::optional< T >::emplace(), END_CATCH, EXT_LANG_BT_COMPLETED, EXT_LANG_BT_ERROR, ui_out::field_core_addr(), ui_out::field_fmt_int(), ui_out::field_int(), ui_out::field_skip(), ui_out::field_string(), flags, frame_object_to_frame_info(), frame_relative_level(), gdbpy_convert_exception(), gdbpy_is_string(), gdb::ref_ptr< T, Policy >::get(), get_addr_from_python(), get_frame_arch(), get_py_iter_from_func(), get_user_print_options(), ui_out::is_mi_like_p(), frame_info::level, lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, MSYMBOL_PRINT_NAME, PRINT_ARGS, print_args(), PRINT_FRAME_INFO, print_frame_info(), PRINT_LEVEL, PRINT_LOCALS, py_mi_print_variables(), py_print_args(), py_print_locals(), PyObject_CallMethod, PyObject_HasAttrString, python_string_to_host_string(), RETURN_MASK_ERROR, ui_out::spaces(), ui_out::text(), TRY, ui_left, and ui_out::wrap_hint().
Referenced by gdbpy_apply_frame_filter().
|
static |
Definition at line 837 of file py-framefilter.c.
References enumerate_locals(), EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, gdb::ref_ptr< T, Policy >::get(), and get_py_iter_from_func().
Referenced by py_print_frame().
|
static |
Definition at line 345 of file py-framefilter.c.
References _, annotate_arg_begin(), annotate_arg_name_end(), annotate_arg_value(), CATCH, gdb::optional< T >::emplace(), END_CATCH, frame_arg::entry_kind, frame_arg::error, EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, ui_out::field_fmt(), ui_out::field_int(), ui_out::field_stream(), ui_out::field_string(), fprintf_symbol_filtered(), gdb_assert, gdbpy_convert_exception(), ui_out::is_mi_like_p(), language_def(), MI_PRINT_SIMPLE_VALUES, NO_VALUES, print_entry_values_compact, print_entry_values_only, ui_file::puts(), py_print_type(), py_print_value(), RETURN_MASK_ERROR, frame_arg::sym, SYMBOL_LANGUAGE, SYMBOL_PRINT_NAME, ui_out::text(), TRY, frame_arg::val, and value_type().
Referenced by enumerate_args().
|
static |
Definition at line 207 of file py-framefilter.c.
References CATCH, check_typedef(), END_CATCH, EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, ui_out::field_stream(), gdbpy_convert_exception(), RETURN_MASK_ALL, TRY, type_print(), and value_type().
Referenced by enumerate_locals(), and py_print_single_arg().
|
static |
Definition at line 238 of file py-framefilter.c.
References CATCH, check_typedef(), common_val_print(), END_CATCH, EXT_LANG_BT_ERROR, EXT_LANG_BT_OK, ui_out::field_stream(), gdbpy_convert_exception(), MI_PRINT_ALL_VALUES, MI_PRINT_SIMPLE_VALUES, NO_VALUES, RETURN_MASK_ALL, TRY, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_STRUCT, TYPE_CODE_UNION, and value_type().
Referenced by enumerate_locals(), and py_print_single_arg().
1.8.14