GDB (xrefs)
|
#include "defs.h"
#include "ada-varobj.h"
#include "ada-lang.h"
#include "language.h"
#include "valprint.h"
Go to the source code of this file.
Functions | |
static void | ada_varobj_decode_var (struct value **value_ptr, struct type **type_ptr) |
static char * | ada_varobj_scalar_image (struct type *type, LONGEST val) |
static void | ada_varobj_struct_elt (struct value *parent_value, struct type *parent_type, int fieldno, struct value **child_value, struct type **child_type) |
static void | ada_varobj_ind (struct value *parent_value, struct type *parent_type, struct value **child_value, struct type **child_type) |
static void | ada_varobj_simple_array_elt (struct value *parent_value, struct type *parent_type, int elt_index, struct value **child_value, struct type **child_type) |
static void | ada_varobj_adjust_for_child_access (struct value **value, struct type **type) |
static int | ada_varobj_get_array_number_of_children (struct value *parent_value, struct type *parent_type) |
static int | ada_varobj_get_struct_number_of_children (struct value *parent_value, struct type *parent_type) |
static int | ada_varobj_get_ptr_number_of_children (struct value *parent_value, struct type *parent_type) |
int | ada_varobj_get_number_of_children (struct value *parent_value, struct type *parent_type) |
static void | ada_varobj_describe_child (struct value *parent_value, struct type *parent_type, const char *parent_name, const char *parent_path_expr, int child_index, char **child_name, struct value **child_value, struct type **child_type, char **child_path_expr) |
static void | ada_varobj_describe_struct_child (struct value *parent_value, struct type *parent_type, const char *parent_name, const char *parent_path_expr, int child_index, char **child_name, struct value **child_value, struct type **child_type, char **child_path_expr) |
static void | ada_varobj_describe_ptr_child (struct value *parent_value, struct type *parent_type, const char *parent_name, const char *parent_path_expr, int child_index, char **child_name, struct value **child_value, struct type **child_type, char **child_path_expr) |
static void | ada_varobj_describe_simple_array_child (struct value *parent_value, struct type *parent_type, const char *parent_name, const char *parent_path_expr, int child_index, char **child_name, struct value **child_value, struct type **child_type, char **child_path_expr) |
char * | ada_varobj_get_name_of_child (struct value *parent_value, struct type *parent_type, const char *parent_name, int child_index) |
char * | ada_varobj_get_path_expr_of_child (struct value *parent_value, struct type *parent_type, const char *parent_name, const char *parent_path_expr, int child_index) |
struct value * | ada_varobj_get_value_of_child (struct value *parent_value, struct type *parent_type, const char *parent_name, int child_index) |
struct type * | ada_varobj_get_type_of_child (struct value *parent_value, struct type *parent_type, int child_index) |
static char * | ada_varobj_get_value_image (struct value *value, struct value_print_options *opts) |
static char * | ada_varobj_get_value_of_array_variable (struct value *value, struct type *type, struct value_print_options *opts) |
char * | ada_varobj_get_value_of_variable (struct value *value, struct type *type, struct value_print_options *opts) |
static void ada_varobj_adjust_for_child_access | ( | struct value ** | value, |
struct type ** | type | ||
) | [static] |
Definition at line 206 of file ada-varobj.c.
References ada_is_array_descriptor_type(), ada_is_constrained_packed_array_type(), ada_varobj_ind(), TYPE_CODE, TYPE_CODE_PTR, TYPE_CODE_STRUCT, TYPE_CODE_UNION, and TYPE_TARGET_TYPE.
Referenced by ada_varobj_describe_child(), and ada_varobj_get_number_of_children().
static void ada_varobj_decode_var | ( | struct value ** | value_ptr, |
struct type ** | type_ptr | ||
) | [static] |
Definition at line 60 of file ada-varobj.c.
References ada_check_typedef(), ada_get_decoded_type(), ada_get_decoded_value(), and value_type().
Referenced by ada_varobj_describe_child(), ada_varobj_get_number_of_children(), and ada_varobj_get_value_of_variable().
static void ada_varobj_describe_child | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
const char * | parent_name, | ||
const char * | parent_path_expr, | ||
int | child_index, | ||
char ** | child_name, | ||
struct value ** | child_value, | ||
struct type ** | child_type, | ||
char ** | child_path_expr | ||
) | [static] |
Definition at line 645 of file ada-varobj.c.
References ada_is_array_descriptor_type(), ada_varobj_adjust_for_child_access(), ada_varobj_decode_var(), ada_varobj_describe_ptr_child(), ada_varobj_describe_simple_array_child(), ada_varobj_describe_struct_child(), gdb_assert, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_PTR, TYPE_CODE_STRUCT, and TYPE_CODE_TYPEDEF.
Referenced by ada_varobj_describe_struct_child(), ada_varobj_get_name_of_child(), ada_varobj_get_path_expr_of_child(), ada_varobj_get_type_of_child(), and ada_varobj_get_value_of_child().
static void ada_varobj_describe_ptr_child | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
const char * | parent_name, | ||
const char * | parent_path_expr, | ||
int | child_index, | ||
char ** | child_name, | ||
struct value ** | child_value, | ||
struct type ** | child_type, | ||
char ** | child_path_expr | ||
) | [static] |
Definition at line 530 of file ada-varobj.c.
References ada_varobj_ind(), and xstrprintf().
Referenced by ada_varobj_describe_child().
static void ada_varobj_describe_simple_array_child | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
const char * | parent_name, | ||
const char * | parent_path_expr, | ||
int | child_index, | ||
char ** | child_name, | ||
struct value ** | child_value, | ||
struct type ** | child_type, | ||
char ** | child_path_expr | ||
) | [static] |
Definition at line 560 of file ada-varobj.c.
References ada_decode(), ada_discrete_type_low_bound(), ada_find_parallel_type(), ada_fixup_array_indexes_type(), ada_name_prefix_len(), ada_type_name(), ada_varobj_scalar_image(), ada_varobj_simple_array_elt(), do_cleanups(), gdb_assert, make_cleanup(), TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_BOOL, TYPE_CODE_ENUM, TYPE_CODE_RANGE, TYPE_FIELD_TYPE, TYPE_INDEX_TYPE, TYPE_TARGET_TYPE, xfree(), and xstrprintf().
Referenced by ada_varobj_describe_child().
static void ada_varobj_describe_struct_child | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
const char * | parent_name, | ||
const char * | parent_path_expr, | ||
int | child_index, | ||
char ** | child_name, | ||
struct value ** | child_value, | ||
struct type ** | child_type, | ||
char ** | child_path_expr | ||
) | [static] |
Definition at line 392 of file ada-varobj.c.
References ada_is_ignored_field(), ada_is_tagged_type(), ada_is_variant_part(), ada_is_wrapper_field(), ada_name_prefix_len(), ada_varobj_describe_child(), ada_varobj_get_number_of_children(), ada_varobj_get_struct_number_of_children(), ada_varobj_struct_elt(), field_name(), gdb_assert, gdb_assert_not_reached, TYPE_CODE, TYPE_CODE_STRUCT, TYPE_FIELD_NAME, TYPE_NFIELDS, and xstrprintf().
Referenced by ada_varobj_describe_child().
static int ada_varobj_get_array_number_of_children | ( | struct value * | parent_value, |
struct type * | parent_type | ||
) | [static] |
Definition at line 226 of file ada-varobj.c.
References _, get_array_bounds(), LONGEST, and warning().
Referenced by ada_varobj_get_number_of_children(), and ada_varobj_get_value_of_array_variable().
char* ada_varobj_get_name_of_child | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
const char * | parent_name, | ||
int | child_index | ||
) |
Definition at line 725 of file ada-varobj.c.
References ada_varobj_describe_child().
Referenced by ada_name_of_child(), and ada_value_has_mutated().
int ada_varobj_get_number_of_children | ( | struct value * | parent_value, |
struct type * | parent_type | ||
) |
Definition at line 327 of file ada-varobj.c.
References ada_is_array_descriptor_type(), ada_varobj_adjust_for_child_access(), ada_varobj_decode_var(), ada_varobj_get_array_number_of_children(), ada_varobj_get_ptr_number_of_children(), ada_varobj_get_struct_number_of_children(), TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_PTR, TYPE_CODE_STRUCT, TYPE_CODE_TYPEDEF, and TYPE_CODE_UNION.
Referenced by ada_number_of_children(), ada_value_has_mutated(), ada_varobj_describe_struct_child(), and ada_varobj_get_struct_number_of_children().
char* ada_varobj_get_path_expr_of_child | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
const char * | parent_name, | ||
const char * | parent_path_expr, | ||
int | child_index | ||
) |
Definition at line 745 of file ada-varobj.c.
References ada_varobj_describe_child().
Referenced by ada_path_expr_of_child().
static int ada_varobj_get_ptr_number_of_children | ( | struct value * | parent_value, |
struct type * | parent_type | ||
) | [static] |
Definition at line 308 of file ada-varobj.c.
References TYPE_CODE, TYPE_CODE_FUNC, TYPE_CODE_VOID, and TYPE_TARGET_TYPE.
Referenced by ada_varobj_get_number_of_children().
static int ada_varobj_get_struct_number_of_children | ( | struct value * | parent_value, |
struct type * | parent_type | ||
) | [static] |
Definition at line 250 of file ada-varobj.c.
References ada_is_ignored_field(), ada_is_tagged_type(), ada_is_variant_part(), ada_is_wrapper_field(), ada_varobj_get_number_of_children(), ada_varobj_struct_elt(), gdb_assert, TYPE_CODE, TYPE_CODE_STRUCT, TYPE_CODE_UNION, and TYPE_NFIELDS.
Referenced by ada_varobj_describe_struct_child(), and ada_varobj_get_number_of_children().
struct type* ada_varobj_get_type_of_child | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
int | child_index | ||
) | [read] |
Definition at line 781 of file ada-varobj.c.
References ada_varobj_describe_child().
Referenced by ada_type_of_child().
static char* ada_varobj_get_value_image | ( | struct value * | value, |
struct value_print_options * | opts | ||
) | [static] |
Definition at line 799 of file ada-varobj.c.
References common_val_print(), current_language, do_cleanups(), make_cleanup_ui_file_delete(), mem_fileopen(), and ui_file_xstrdup().
Referenced by ada_varobj_get_value_of_array_variable(), and ada_varobj_get_value_of_variable().
static char* ada_varobj_get_value_of_array_variable | ( | struct value * | value, |
struct type * | type, | ||
struct value_print_options * | opts | ||
) | [static] |
Definition at line 827 of file ada-varobj.c.
References ada_is_string_type(), ada_varobj_get_array_number_of_children(), ada_varobj_get_value_image(), do_cleanups(), value_print_options::format, make_cleanup(), xfree(), and xstrprintf().
Referenced by ada_varobj_get_value_of_variable().
struct value* ada_varobj_get_value_of_child | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
const char * | parent_name, | ||
int | child_index | ||
) | [read] |
Definition at line 764 of file ada-varobj.c.
References ada_varobj_describe_child().
Referenced by ada_value_of_child().
char* ada_varobj_get_value_of_variable | ( | struct value * | value, |
struct type * | type, | ||
struct value_print_options * | opts | ||
) |
Definition at line 860 of file ada-varobj.c.
References ada_varobj_decode_var(), ada_varobj_get_value_image(), ada_varobj_get_value_of_array_variable(), TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_STRUCT, and TYPE_CODE_UNION.
Referenced by ada_value_of_variable().
static void ada_varobj_ind | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
struct value ** | child_value, | ||
struct type ** | child_type | ||
) | [static] |
Definition at line 125 of file ada-varobj.c.
References ada_coerce_to_simple_array_type(), ada_is_array_descriptor_type(), ada_value_ind(), gdb_assert, lookup_pointer_type(), type, TYPE_CODE, TYPE_CODE_TYPEDEF, TYPE_TARGET_TYPE, value_as_address(), and value_type().
Referenced by ada_varobj_adjust_for_child_access(), and ada_varobj_describe_ptr_child().
static char* ada_varobj_scalar_image | ( | struct type * | type, |
LONGEST | val | ||
) | [static] |
Definition at line 79 of file ada-varobj.c.
References ada_print_scalar(), do_cleanups(), make_cleanup_ui_file_delete(), mem_fileopen(), and ui_file_xstrdup().
Referenced by ada_varobj_describe_simple_array_child().
static void ada_varobj_simple_array_elt | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
int | elt_index, | ||
struct value ** | child_value, | ||
struct type ** | child_type | ||
) | [static] |
Definition at line 173 of file ada-varobj.c.
References ada_value_subscript(), type, TYPE_INDEX_TYPE, TYPE_TARGET_TYPE, value_from_longest(), and value_type().
Referenced by ada_varobj_describe_simple_array_child().
static void ada_varobj_struct_elt | ( | struct value * | parent_value, |
struct type * | parent_type, | ||
int | fieldno, | ||
struct value ** | child_value, | ||
struct type ** | child_type | ||
) | [static] |
Definition at line 97 of file ada-varobj.c.
References type, TYPE_FIELD_TYPE, value_field(), and value_type().
Referenced by ada_varobj_describe_struct_child(), and ada_varobj_get_struct_number_of_children().