GDB (xrefs)

Functions | Variables
/tmp/gdb-8.1/gdb/ada-varobj.c File Reference
`#include "defs.h"`
`#include "ada-lang.h"`
`#include "varobj.h"`
`#include "language.h"`
`#include "valprint.h"`

Go to the source code of this file.

## Functions
static int | ada_varobj_get_number_of_children (struct value *parent_value, struct type *parent_type)
static void | ada_varobj_decode_var (struct value **value_ptr, struct type **type_ptr)
static std::string | 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)
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, std::string *child_name, struct value **child_value, struct type **child_type, std::string *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, std::string *child_name, struct value **child_value, struct type **child_type, std::string *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, std::string *child_name, struct value **child_value, struct type **child_type, std::string *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, std::string *child_name, struct value **child_value, struct type **child_type, std::string *child_path_expr)
static std::string | ada_varobj_get_name_of_child (struct value *parent_value, struct type *parent_type, const char *parent_name, int child_index)
static std::string | 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)
static struct value * | ada_varobj_get_value_of_child (struct value *parent_value, struct type *parent_type, const char *parent_name, int child_index)
static struct type * | ada_varobj_get_type_of_child (struct value *parent_value, struct type *parent_type, int child_index)
static std::string | ada_varobj_get_value_image (struct value *value, struct value_print_options *opts)
static std::string | ada_varobj_get_value_of_array_variable (struct value *value, struct type *type, struct value_print_options *opts)
static std::string | ada_varobj_get_value_of_variable (struct value *value, struct type *type, struct value_print_options *opts)
static int | ada_number_of_children (const struct varobj *var)
static std::string | ada_name_of_variable (const struct varobj *parent)
static std::string | ada_name_of_child (const struct varobj *parent, int index)
static std::string | ada_path_expr_of_child (const struct varobj *child)
static struct value * | ada_value_of_child (const struct varobj *parent, int index)
static struct type * | ada_type_of_child (const struct varobj *parent, int index)
static std::string | ada_value_of_variable (const struct varobj *var, enum varobj_display_formats format)
static bool | ada_value_is_changeable_p (const struct varobj *var)
static bool | ada_value_has_mutated (const struct varobj *var, struct value *new_val, struct type *new_type)

## Variables
const struct lang_varobj_ops | ada_varobj_ops

## Function Documentation

## ◆ ada_name_of_child()

static std::string ada_name_of_child | ( | const struct varobj * | parent,
|  | int | index
| ) |  |
| static

Definition at line 885 of file ada-varobj.c.

References ada_varobj_get_name_of_child(), varobj::name, varobj::type, and varobj::value.

## ◆ ada_name_of_variable()

static std::string ada_name_of_variable | ( | const struct varobj * | parent | ) |
| static

Definition at line 879 of file ada-varobj.c.

References c_varobj_ops, and lang_varobj_ops::name_of_variable.

## ◆ ada_number_of_children()

static int ada_number_of_children | ( | const struct varobj * | var | ) |
| static

Definition at line 873 of file ada-varobj.c.

References ada_varobj_get_number_of_children(), varobj::type, and varobj::value.

## ◆ ada_path_expr_of_child()

static std::string ada_path_expr_of_child | ( | const struct varobj * | child | ) |
| static

Definition at line 892 of file ada-varobj.c.

References ada_varobj_get_path_expr_of_child(), varobj::index, varobj::name, varobj::parent, varobj::type, varobj::value, and varobj_get_path_expr().

## ◆ ada_type_of_child()

static struct type* ada_type_of_child | ( | const struct varobj * | parent,
|  | int | index
| ) |  |
| static

Definition at line 912 of file ada-varobj.c.

References ada_varobj_get_type_of_child(), varobj::type, and varobj::value.

## ◆ ada_value_has_mutated()

static bool ada_value_has_mutated | ( | const struct varobj * | var,
|  | struct value * | new_val,
|  | struct type * | new_type
| ) |  |
| static

Definition at line 958 of file ada-varobj.c.

References ada_varobj_get_name_of_child(), ada_varobj_get_number_of_children(), varobj::children, varobj::name, new_type(), varobj::num_children, and varobj_restrict_range().

## ◆ ada_value_is_changeable_p()

static bool ada_value_is_changeable_p | ( | const struct varobj * | var | ) |
| static

Definition at line 932 of file ada-varobj.c.

References ada_is_array_descriptor_type(), ada_is_string_type(), varobj::type, TYPE_CODE, TYPE_CODE_TYPEDEF, varobj::value, value_type(), and varobj_default_value_is_changeable_p().

## ◆ ada_value_of_child()

static struct value* ada_value_of_child | ( | const struct varobj * | parent,
|  | int | index
| ) |  |
| static

Definition at line 905 of file ada-varobj.c.

References ada_varobj_get_value_of_child(), value::parent, and value::type.

## ◆ ada_value_of_variable()

static std::string ada_value_of_variable | ( | const struct varobj * | var,
|  | enum varobj_display_formats | format
| ) |  |
| static

Definition at line 919 of file ada-varobj.c.

References ada_varobj_get_value_of_variable(), value_print_options::format, varobj::type, varobj::value, and varobj_formatted_print_options().

## ◆ ada_varobj_adjust_for_child_access()

static void ada_varobj_adjust_for_child_access | ( | struct value ** | value,
|  | struct type ** | type
| ) |  |
| static

Definition at line 202 of file ada-varobj.c.

References ada_is_array_descriptor_type(), ada_is_constrained_packed_array_type(), ada_is_tagged_type(), ada_tag_value_at_base_address(), ada_varobj_ind(), TYPE_CODE, TYPE_CODE_PTR, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_TARGET_TYPE, and value_type().

Referenced by ada_varobj_describe_child(), and ada_varobj_get_number_of_children().

## ◆ ada_varobj_decode_var()

static void ada_varobj_decode_var | ( | struct value ** | value_ptr,
|  | struct type ** | type_ptr
| ) |  |
| static

Definition at line 63 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().

## ◆ ada_varobj_describe_child()

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,
|  | std::string * | child_name,
|  | struct value ** | child_value,
|  | struct type ** | child_type,
|  | std::string * | child_path_expr
| ) |  |
| static

Definition at line 654 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, string, 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().

## ◆ ada_varobj_describe_ptr_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,
|  | std::string * | child_name,
|  | struct value ** | child_value,
|  | struct type ** | child_type,
|  | std::string * | child_path_expr
| ) |  |
| static

Definition at line 547 of file ada-varobj.c.

References ada_varobj_ind(), and string_printf().

Referenced by ada_varobj_describe_child().

## ◆ ada_varobj_describe_simple_array_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,
|  | std::string * | child_name,
|  | struct value ** | child_value,
|  | struct type ** | child_type,
|  | std::string * | child_path_expr
| ) |  |
| static

Definition at line 577 of file ada-varobj.c.

References ada_decode(), ada_discrete_type_low_bound(), ada_name_prefix_len(), ada_type_name(), ada_varobj_scalar_image(), ada_varobj_simple_array_elt(), gdb_assert, string, string_printf(), TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_BOOL, TYPE_CODE_ENUM, TYPE_CODE_RANGE, TYPE_INDEX_TYPE, and TYPE_TARGET_TYPE.

Referenced by ada_varobj_describe_child().

## ◆ ada_varobj_describe_struct_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,
|  | std::string * | child_name,
|  | struct value ** | child_value,
|  | struct type ** | child_type,
|  | std::string * | child_path_expr
| ) |  |
| static

Definition at line 409 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, string_printf(), TYPE_CODE, TYPE_CODE_STRUCT, TYPE_FIELD_NAME, and TYPE_NFIELDS.

Referenced by ada_varobj_describe_child().

## ◆ ada_varobj_get_array_number_of_children()

static int ada_varobj_get_array_number_of_children | ( | struct value * | parent_value,
|  | struct type * | parent_type
| ) |  |
| static

Definition at line 231 of file ada-varobj.c.

References _, get_array_bounds(), is_dynamic_type(), TYPE_INDEX_TYPE, and warning().

Referenced by ada_varobj_get_number_of_children(), and ada_varobj_get_value_of_array_variable().

## ◆ ada_varobj_get_name_of_child()

static std::string ada_varobj_get_name_of_child | ( | struct value * | parent_value,
|  | struct type * | parent_type,
|  | const char * | parent_name,
|  | int | child_index
| ) |  |
| static

Definition at line 732 of file ada-varobj.c.

References ada_varobj_describe_child(), and string.

Referenced by ada_name_of_child(), and ada_value_has_mutated().

## ◆ ada_varobj_get_number_of_children()

static int ada_varobj_get_number_of_children | ( | struct value * | parent_value,
|  | struct type * | parent_type
| ) |  |
| static

Definition at line 344 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().

## ◆ ada_varobj_get_path_expr_of_child()

static std::string 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
| ) |  |
| static

Definition at line 750 of file ada-varobj.c.

References ada_varobj_describe_child(), and string.

Referenced by ada_path_expr_of_child().

## ◆ ada_varobj_get_ptr_number_of_children()

static int ada_varobj_get_ptr_number_of_children | ( | struct value * | parent_value,
|  | struct type * | parent_type
| ) |  |
| static

Definition at line 325 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().

## ◆ ada_varobj_get_struct_number_of_children()

static int ada_varobj_get_struct_number_of_children | ( | struct value * | parent_value,
|  | struct type * | parent_type
| ) |  |
| static

Definition at line 267 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().

## ◆ ada_varobj_get_type_of_child()

static struct type* ada_varobj_get_type_of_child | ( | struct value * | parent_value,
|  | struct type * | parent_type,
|  | int | child_index
| ) |  |
| static

Definition at line 786 of file ada-varobj.c.

References ada_varobj_describe_child().

Referenced by ada_type_of_child().

## ◆ ada_varobj_get_value_image()

static std::string ada_varobj_get_value_image | ( | struct value * | value,
|  | struct value_print_options * | opts
| ) |  |
| static

Definition at line 804 of file ada-varobj.c.

References common_val_print(), and current_language.

Referenced by ada_varobj_get_value_of_array_variable(), and ada_varobj_get_value_of_variable().

## ◆ ada_varobj_get_value_of_array_variable()

static std::string ada_varobj_get_value_of_array_variable | ( | struct value * | value,
|  | struct type * | type,
|  | struct value_print_options * | opts
| ) |  |
| static

Definition at line 824 of file ada-varobj.c.

References ada_is_string_type(), ada_varobj_get_array_number_of_children(), ada_varobj_get_value_image(), value_print_options::format, string, and string_printf().

Referenced by ada_varobj_get_value_of_variable().

## ◆ ada_varobj_get_value_of_child()

static struct value* ada_varobj_get_value_of_child | ( | struct value * | parent_value,
|  | struct type * | parent_type,
|  | const char * | parent_name,
|  | int | child_index
| ) |  |
| static

Definition at line 769 of file ada-varobj.c.

References ada_varobj_describe_child().

Referenced by ada_value_of_child().

## ◆ ada_varobj_get_value_of_variable()

static std::string ada_varobj_get_value_of_variable | ( | struct value * | value,
|  | struct type * | type,
|  | struct value_print_options * | opts
| ) |  |
| static

Definition at line 849 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().

## ◆ ada_varobj_ind()

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 121 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().

## ◆ ada_varobj_scalar_image()

static std::string ada_varobj_scalar_image | ( | struct type * | type,
|  | LONGEST | val
| ) |  |
| static

Definition at line 80 of file ada-varobj.c.

References ada_print_scalar(), and string_file::string().

Referenced by ada_varobj_describe_simple_array_child().

## ◆ ada_varobj_simple_array_elt()

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 169 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().

## ◆ ada_varobj_struct_elt()

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 93 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().

## Variable Documentation

## ◆ ada_varobj_ops

const struct lang_varobj_ops ada_varobj_ops

Initial value:
=
{
ada_number_of_children,
ada_name_of_variable,
ada_name_of_child,
ada_path_expr_of_child,
ada_value_of_child,
ada_type_of_child,
ada_value_of_variable,
ada_value_is_changeable_p,
ada_value_has_mutated,
varobj_default_is_path_expr_parent
}
ada_name_of_variable
static std::string ada_name_of_variable(const struct varobj *parent)
Definition: ada-varobj.c:879
ada_name_of_child
static std::string ada_name_of_child(const struct varobj *parent, int index)
Definition: ada-varobj.c:885
ada_value_of_child
static struct value * ada_value_of_child(const struct varobj *parent, int index)
Definition: ada-varobj.c:905
ada_path_expr_of_child
static std::string ada_path_expr_of_child(const struct varobj *child)
Definition: ada-varobj.c:892
ada_value_has_mutated
static bool ada_value_has_mutated(const struct varobj *var, struct value *new_val, struct type *new_type)
Definition: ada-varobj.c:958
ada_value_of_variable
static std::string ada_value_of_variable(const struct varobj *var, enum varobj_display_formats format)
Definition: ada-varobj.c:919
ada_type_of_child
static struct type * ada_type_of_child(const struct varobj *parent, int index)
Definition: ada-varobj.c:912
ada_number_of_children
static int ada_number_of_children(const struct varobj *var)
Definition: ada-varobj.c:873
varobj_default_is_path_expr_parent
bool varobj_default_is_path_expr_parent(const struct varobj *var)
Definition: varobj.c:934
ada_value_is_changeable_p
static bool ada_value_is_changeable_p(const struct varobj *var)
Definition: ada-varobj.c:932

Definition at line 995 of file ada-varobj.c.