GDB (xrefs)
|
#include "defs.h"
#include "value.h"
#include "varobj.h"
#include "gdbthread.h"
#include "valprint.h"
Go to the source code of this file.
Macros | |
#define | ANONYMOUS_STRUCT_NAME _("<anonymous struct>") |
#define | ANONYMOUS_UNION_NAME _("<anonymous union>") |
Enumerations | |
enum | vsections { v_public = 0 , v_private , v_protected } |
enum | accessibility { private_field , protected_field , public_field } |
Functions | |
static void | cplus_class_num_children (struct type *type, int children[3]) |
bool | varobj_is_anonymous_child (const struct varobj *child) |
static void | adjust_value_for_child_access (struct value **value, struct type **type, int *was_ptr, int lookup_actual_type) |
static bool | c_is_path_expr_parent (const struct varobj *var) |
static int | c_number_of_children (const struct varobj *var) |
static std::string | c_name_of_variable (const struct varobj *parent) |
static struct value * | value_struct_element_index (struct value *value, int type_index) |
static void | c_describe_child (const struct varobj *parent, int index, std::string *cname, struct value **cvalue, struct type **ctype, std::string *cfull_expression) |
static std::string | c_name_of_child (const struct varobj *parent, int index) |
static std::string | c_path_expr_of_child (const struct varobj *child) |
static struct value * | c_value_of_child (const struct varobj *parent, int index) |
static struct type * | c_type_of_child (const struct varobj *parent, int index) |
static struct type * | get_type (const struct varobj *var) |
static std::string | c_value_of_variable (const struct varobj *var, enum varobj_display_formats format) |
static int | cplus_number_of_children (const struct varobj *var) |
static std::string | cplus_name_of_variable (const struct varobj *parent) |
static int | match_accessibility (struct type *type, int index, enum accessibility acc) |
static void | cplus_describe_child (const struct varobj *parent, int index, std::string *cname, struct value **cvalue, struct type **ctype, std::string *cfull_expression) |
static std::string | cplus_name_of_child (const struct varobj *parent, int index) |
static std::string | cplus_path_expr_of_child (const struct varobj *child) |
static struct value * | cplus_value_of_child (const struct varobj *parent, int index) |
static struct type * | cplus_type_of_child (const struct varobj *parent, int index) |
static std::string | cplus_value_of_variable (const struct varobj *var, enum varobj_display_formats format) |
Variables | |
const struct lang_varobj_ops | c_varobj_ops |
const struct lang_varobj_ops | cplus_varobj_ops |
#define ANONYMOUS_STRUCT_NAME _("<anonymous struct>") |
Definition at line 27 of file c-varobj.c.
Referenced by c_describe_child(), cplus_describe_child(), and varobj_is_anonymous_child().
#define ANONYMOUS_UNION_NAME _("<anonymous union>") |
Definition at line 28 of file c-varobj.c.
Referenced by c_describe_child(), cplus_describe_child(), and varobj_is_anonymous_child().
enum accessibility |
Enumerator | |
---|---|
private_field | |
protected_field | |
public_field |
Definition at line 672 of file c-varobj.c.
enum vsections |
Enumerator | |
---|---|
v_public | |
v_private | |
v_protected |
Definition at line 548 of file c-varobj.c.
|
static |
Definition at line 65 of file c-varobj.c.
References check_typedef(), type::code(), get_target_type(), type::target_type(), TYPE_IS_REFERENCE, value_actual_type(), value_cast(), and value_ind().
Referenced by c_describe_child(), c_is_path_expr_parent(), c_number_of_children(), cplus_describe_child(), and cplus_number_of_children().
|
static |
Definition at line 282 of file c-varobj.c.
References adjust_value_for_child_access(), ANONYMOUS_STRUCT_NAME, ANONYMOUS_UNION_NAME, type::bounds(), type::code(), dynamic_prop::const_val(), type::field(), field_name(), get_target_type(), range_bounds::low, field::name(), varobj::name, value::parent(), type::target_type(), field::type(), value::value(), value_ind(), value_struct_element_index(), value_subscript(), varobj_get_path_expr(), varobj_get_path_expr_parent(), and varobj_get_value_type().
Referenced by c_name_of_child(), c_path_expr_of_child(), c_type_of_child(), c_value_of_child(), and cplus_describe_child().
|
static |
Definition at line 134 of file c-varobj.c.
References adjust_value_for_child_access(), type::code(), CPLUS_FAKE_CHILD, type::field(), field_name(), varobj::index, field::name(), type::name(), type::num_fields(), varobj::parent, type, varobj_get_gdb_type(), and varobj_get_value_type().
|
static |
Definition at line 423 of file c-varobj.c.
References c_describe_child(), and name.
|
static |
Definition at line 233 of file c-varobj.c.
References varobj::name.
Referenced by cplus_name_of_variable().
|
static |
Definition at line 182 of file c-varobj.c.
References adjust_value_for_child_access(), type::bounds(), type::code(), get_target_type(), range_bounds::high, dynamic_prop::kind(), type::length(), type::num_fields(), PROP_UNDEFINED, and varobj_get_value_type().
Referenced by cplus_number_of_children().
|
static |
Definition at line 432 of file c-varobj.c.
References c_describe_child(), varobj::index, and varobj::parent.
Definition at line 451 of file c-varobj.c.
References c_describe_child(), and type.
Definition at line 442 of file c-varobj.c.
References c_describe_child(), value::parent(), and value.
|
static |
Definition at line 475 of file c-varobj.c.
References check_typedef(), type::code(), varobj::format, get_type(), varobj::not_fetched, varobj::num_children, varobj::print_value, type::target_type(), TYPE_IS_REFERENCE, varobj::value, varobj_value_get_print_value(), and varobj_value_is_changeable_p().
Referenced by cplus_value_of_variable().
|
static |
Definition at line 638 of file c-varobj.c.
References type::field(), get_vptr_fieldno(), field::is_artificial(), type::num_fields(), TYPE_FIELD_PRIVATE, TYPE_FIELD_PROTECTED, TYPE_N_BASECLASSES, v_private, v_protected, and v_public.
Referenced by cplus_describe_child(), and cplus_number_of_children().
|
static |
Definition at line 692 of file c-varobj.c.
References adjust_value_for_child_access(), ANONYMOUS_STRUCT_NAME, ANONYMOUS_UNION_NAME, c_describe_child(), type::code(), cplus_class_num_children(), CPLUS_FAKE_CHILD, type::field(), field_name(), get_user_print_options(), get_vptr_fieldno(), field::is_artificial(), type::is_pointer_or_reference(), match_accessibility(), field::name(), varobj::name, varobj::parent, private_field, protected_field, public_field, field::type(), type, varobj::type, TYPE_N_BASECLASSES, v_private, v_public, value, varobj::value, value_cast(), value_struct_element_index(), varobj_get_path_expr(), varobj_get_path_expr_parent(), and varobj_get_value_type().
Referenced by cplus_name_of_child(), cplus_path_expr_of_child(), cplus_type_of_child(), and cplus_value_of_child().
|
static |
Definition at line 892 of file c-varobj.c.
References cplus_describe_child(), and name.
|
static |
Definition at line 667 of file c-varobj.c.
References c_name_of_variable().
|
static |
Definition at line 556 of file c-varobj.c.
References adjust_value_for_child_access(), c_number_of_children(), varobj::children, type::code(), cplus_class_num_children(), CPLUS_FAKE_CHILD, get_user_print_options(), type::is_pointer_or_reference(), varobj::name, varobj::parent, type, varobj::type, TYPE_N_BASECLASSES, v_private, v_protected, v_public, varobj::value, and varobj_get_value_type().
|
static |
Definition at line 901 of file c-varobj.c.
References cplus_describe_child(), varobj::index, and varobj::parent.
Definition at line 920 of file c-varobj.c.
References cplus_describe_child(), and type.
Definition at line 911 of file c-varobj.c.
References cplus_describe_child(), value::parent(), and value.
|
static |
Definition at line 929 of file c-varobj.c.
References c_value_of_variable(), and CPLUS_FAKE_CHILD.
Definition at line 463 of file c-varobj.c.
References check_typedef(), type, and varobj::type.
Referenced by c_value_of_variable(), and make_gdb_type().
|
static |
Definition at line 678 of file c-varobj.c.
References private_field, protected_field, public_field, TYPE_FIELD_PRIVATE, and TYPE_FIELD_PROTECTED.
Referenced by cplus_describe_child().
Definition at line 245 of file c-varobj.c.
References check_typedef(), type::code(), type::field(), field::is_static(), value::primitive_field(), value::type(), and value_static_field().
Referenced by c_describe_child(), and cplus_describe_child().
bool varobj_is_anonymous_child | ( | const struct varobj * | child | ) |
Definition at line 38 of file c-varobj.c.
References ANONYMOUS_STRUCT_NAME, ANONYMOUS_UNION_NAME, and varobj::name.
Referenced by create_child_with_value().
const struct lang_varobj_ops c_varobj_ops |
Definition at line 533 of file c-varobj.c.
Referenced by ada_name_of_variable(), and language_defn::varobj_ops().
const struct lang_varobj_ops cplus_varobj_ops |
Definition at line 944 of file c-varobj.c.
Referenced by cplus_language::varobj_ops().