GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Enumerations | Functions | Variables
varobj.h File Reference
#include "symtab.h"
#include "gdbtypes.h"
#include "value.h"

Go to the source code of this file.

Classes

struct  varobj_update_result
 
struct  varobj
 
struct  lang_varobj_ops
 

Macros

#define CPLUS_FAKE_CHILD(x)   ((x) != NULL && (x)->type == NULL && (x)->value == NULL)
 

Enumerations

enum  varobj_display_formats {
  FORMAT_NATURAL , FORMAT_BINARY , FORMAT_DECIMAL , FORMAT_HEXADECIMAL ,
  FORMAT_OCTAL , FORMAT_ZHEXADECIMAL
}
 
enum  varobj_type { USE_SPECIFIED_FRAME , USE_CURRENT_FRAME , USE_SELECTED_FRAME }
 
enum  varobj_scope_status { VAROBJ_IN_SCOPE = 0 , VAROBJ_NOT_IN_SCOPE = 1 , VAROBJ_INVALID = 2 }
 

Functions

struct varobjvarobj_create (const char *objname, const char *expression, CORE_ADDR frame, enum varobj_type type)
 
std::string varobj_gen_name (void)
 
struct varobjvarobj_get_handle (const char *name)
 
const char * varobj_get_objname (const struct varobj *var)
 
std::string varobj_get_expression (const struct varobj *var)
 
int varobj_delete (struct varobj *var, bool only_children)
 
enum varobj_display_formats varobj_set_display_format (struct varobj *var, enum varobj_display_formats format)
 
enum varobj_display_formats varobj_get_display_format (const struct varobj *var)
 
int varobj_get_thread_id (const struct varobj *var)
 
void varobj_set_frozen (struct varobj *var, bool frozen)
 
bool varobj_get_frozen (const struct varobj *var)
 
void varobj_get_child_range (const struct varobj *var, int *from, int *to)
 
void varobj_set_child_range (struct varobj *var, int from, int to)
 
gdb::unique_xmalloc_ptr< char > varobj_get_display_hint (const struct varobj *var)
 
int varobj_get_num_children (struct varobj *var)
 
const std::vector< varobj * > & varobj_list_children (struct varobj *var, int *from, int *to)
 
std::string varobj_get_type (struct varobj *var)
 
struct typevarobj_get_gdb_type (const struct varobj *var)
 
const char * varobj_get_path_expr (const struct varobj *var)
 
const struct language_defnvarobj_get_language (const struct varobj *var)
 
int varobj_get_attributes (const struct varobj *var)
 
std::string varobj_get_formatted_value (struct varobj *var, enum varobj_display_formats format)
 
std::string varobj_get_value (struct varobj *var)
 
bool varobj_set_value (struct varobj *var, const char *expression)
 
void all_root_varobjs (gdb::function_view< void(struct varobj *var)>)
 
std::vector< varobj_update_resultvarobj_update (struct varobj **varp, bool is_explicit)
 
void varobj_re_set (void)
 
bool varobj_editable_p (const struct varobj *var)
 
bool varobj_floating_p (const struct varobj *var)
 
void varobj_set_visualizer (struct varobj *var, const char *visualizer)
 
void varobj_enable_pretty_printing (void)
 
bool varobj_has_more (const struct varobj *var, int to)
 
bool varobj_is_dynamic_p (const struct varobj *var)
 
bool varobj_default_value_is_changeable_p (const struct varobj *var)
 
bool varobj_value_is_changeable_p (const struct varobj *var)
 
struct typevarobj_get_value_type (const struct varobj *var)
 
bool varobj_is_anonymous_child (const struct varobj *child)
 
const struct varobjvarobj_get_path_expr_parent (const struct varobj *var)
 
std::string varobj_value_get_print_value (struct value *value, enum varobj_display_formats format, const struct varobj *var)
 
void varobj_formatted_print_options (struct value_print_options *opts, enum varobj_display_formats format)
 
void varobj_restrict_range (const std::vector< varobj * > &children, int *from, int *to)
 
bool varobj_default_is_path_expr_parent (const struct varobj *var)
 

Variables

const char * varobj_format_string []
 
const struct lang_varobj_ops c_varobj_ops
 
const struct lang_varobj_ops cplus_varobj_ops
 
const struct lang_varobj_ops ada_varobj_ops
 
unsigned int varobjdebug
 

Macro Definition Documentation

◆ CPLUS_FAKE_CHILD

#define CPLUS_FAKE_CHILD ( x)    ((x) != NULL && (x)->type == NULL && (x)->value == NULL)

Enumeration Type Documentation

◆ varobj_display_formats

Enumerator
FORMAT_NATURAL 
FORMAT_BINARY 
FORMAT_DECIMAL 
FORMAT_HEXADECIMAL 
FORMAT_OCTAL 
FORMAT_ZHEXADECIMAL 

Definition at line 25 of file varobj.h.

◆ varobj_scope_status

Enumerator
VAROBJ_IN_SCOPE 
VAROBJ_NOT_IN_SCOPE 
VAROBJ_INVALID 

Definition at line 43 of file varobj.h.

◆ varobj_type

Enumerator
USE_SPECIFIED_FRAME 
USE_CURRENT_FRAME 
USE_SELECTED_FRAME 

Definition at line 35 of file varobj.h.

Function Documentation

◆ all_root_varobjs()

void all_root_varobjs ( gdb::function_view< void(struct varobj *var)> func)
extern

Definition at line 2319 of file varobj.c.

References func, and rootlist.

Referenced by mi_cmd_var_update(), preserve_values(), varobj_invalidate_if_uses_objfile(), and varobj_re_set().

◆ varobj_create()

struct varobj * varobj_create ( const char * objname,
const char * expression,
CORE_ADDR frame,
enum varobj_type type )
extern

◆ varobj_default_is_path_expr_parent()

bool varobj_default_is_path_expr_parent ( const struct varobj * var)
extern

Definition at line 864 of file varobj.c.

◆ varobj_default_value_is_changeable_p()

bool varobj_default_value_is_changeable_p ( const struct varobj * var)
extern

Definition at line 2290 of file varobj.c.

References type::code(), CPLUS_FAKE_CHILD, type, and varobj_get_value_type().

Referenced by ada_value_is_changeable_p().

◆ varobj_delete()

int varobj_delete ( struct varobj * var,
bool only_children )
extern

◆ varobj_editable_p()

bool varobj_editable_p ( const struct varobj * var)
extern

◆ varobj_enable_pretty_printing()

void varobj_enable_pretty_printing ( void )
extern

Definition at line 62 of file varobj.c.

References pretty_printing.

Referenced by mi_cmd_enable_pretty_printing().

◆ varobj_floating_p()

bool varobj_floating_p ( const struct varobj * var)
extern

Definition at line 2281 of file varobj.c.

References varobj_root::floating, and varobj::root.

Referenced by mi_cmd_var_update_iter().

◆ varobj_formatted_print_options()

void varobj_formatted_print_options ( struct value_print_options * opts,
enum varobj_display_formats format )
extern

◆ varobj_gen_name()

std::string varobj_gen_name ( void )
extern

Definition at line 418 of file varobj.c.

Referenced by mi_cmd_var_create().

◆ varobj_get_attributes()

int varobj_get_attributes ( const struct varobj * var)
extern

Definition at line 914 of file varobj.c.

References attributes, and varobj_editable_p().

Referenced by mi_cmd_var_show_attributes().

◆ varobj_get_child_range()

void varobj_get_child_range ( const struct varobj * var,
int * from,
int * to )
extern

Definition at line 1352 of file varobj.c.

References varobj::from, and varobj::to.

Referenced by varobj_update_one().

◆ varobj_get_display_format()

enum varobj_display_formats varobj_get_display_format ( const struct varobj * var)
extern

Definition at line 502 of file varobj.c.

References varobj::format.

Referenced by mi_cmd_var_show_format().

◆ varobj_get_display_hint()

gdb::unique_xmalloc_ptr< char > varobj_get_display_hint ( const struct varobj * var)
extern

◆ varobj_get_expression()

std::string varobj_get_expression ( const struct varobj * var)
extern

Definition at line 454 of file varobj.c.

References name_of_variable().

Referenced by mi_cmd_var_info_expression(), and print_varobj().

◆ varobj_get_formatted_value()

std::string varobj_get_formatted_value ( struct varobj * var,
enum varobj_display_formats format )
extern

Definition at line 934 of file varobj.c.

References my_value_of_variable().

Referenced by mi_cmd_var_evaluate_expression().

◆ varobj_get_frozen()

bool varobj_get_frozen ( const struct varobj * var)
extern

Definition at line 564 of file varobj.c.

References varobj::frozen.

Referenced by print_varobj().

◆ varobj_get_gdb_type()

struct type * varobj_get_gdb_type ( const struct varobj * var)
extern

Definition at line 844 of file varobj.c.

References varobj::type.

Referenced by c_is_path_expr_parent(), and mi_print_value_p().

◆ varobj_get_handle()

struct varobj * varobj_get_handle ( const char * name)
extern

◆ varobj_get_language()

const struct language_defn * varobj_get_language ( const struct varobj * var)
extern

Definition at line 908 of file varobj.c.

References varobj_root::exp, and varobj::root.

Referenced by mi_cmd_var_info_expression().

◆ varobj_get_num_children()

int varobj_get_num_children ( struct varobj * var)
extern

◆ varobj_get_objname()

const char * varobj_get_objname ( const struct varobj * var)
extern

Definition at line 445 of file varobj.c.

References varobj::obj_name.

Referenced by print_varobj(), and varobj_update_one().

◆ varobj_get_path_expr()

const char * varobj_get_path_expr ( const struct varobj * var)
extern

◆ varobj_get_path_expr_parent()

const struct varobj * varobj_get_path_expr_parent ( const struct varobj * var)
extern

◆ varobj_get_thread_id()

int varobj_get_thread_id ( const struct varobj * var)
extern

Definition at line 542 of file varobj.c.

References varobj::root, varobj_root::thread_id, and varobj_root::valid_block.

Referenced by mi_cmd_var_update_iter(), and print_varobj().

◆ varobj_get_type()

std::string varobj_get_type ( struct varobj * var)
extern

◆ varobj_get_value()

std::string varobj_get_value ( struct varobj * var)
extern

◆ varobj_get_value_type()

struct type * varobj_get_value_type ( const struct varobj * var)
extern

◆ varobj_has_more()

bool varobj_has_more ( const struct varobj * var,
int to )
extern

◆ varobj_is_anonymous_child()

bool varobj_is_anonymous_child ( const struct varobj * child)
extern

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

◆ varobj_is_dynamic_p()

bool varobj_is_dynamic_p ( const struct varobj * var)
extern

◆ varobj_list_children()

const std::vector< varobj * > & varobj_list_children ( struct varobj * var,
int * from,
int * to )
extern

◆ varobj_re_set()

void varobj_re_set ( void )
extern

Definition at line 2358 of file varobj.c.

References all_root_varobjs(), and varobj_re_set_iter().

Referenced by symbol_file_command().

◆ varobj_restrict_range()

void varobj_restrict_range ( const std::vector< varobj * > & children,
int * from,
int * to )
extern

Definition at line 574 of file varobj.c.

References varobj::children, varobj::from, and varobj::to.

Referenced by ada_value_has_mutated(), and varobj_list_children().

◆ varobj_set_child_range()

void varobj_set_child_range ( struct varobj * var,
int from,
int to )
extern

Definition at line 1362 of file varobj.c.

References varobj::from, and varobj::to.

Referenced by mi_cmd_var_set_update_range().

◆ varobj_set_display_format()

enum varobj_display_formats varobj_set_display_format ( struct varobj * var,
enum varobj_display_formats format )
extern

◆ varobj_set_frozen()

void varobj_set_frozen ( struct varobj * var,
bool frozen )
extern

Definition at line 551 of file varobj.c.

References varobj::frozen.

Referenced by mi_cmd_var_set_frozen().

◆ varobj_set_value()

bool varobj_set_value ( struct varobj * var,
const char * expression )
extern

◆ varobj_set_visualizer()

void varobj_set_visualizer ( struct varobj * var,
const char * visualizer )
extern

◆ varobj_update()

std::vector< varobj_update_result > varobj_update ( struct varobj ** varp,
bool is_explicit )
extern

◆ varobj_value_get_print_value()

std::string varobj_value_get_print_value ( struct value * value,
enum varobj_display_formats format,
const struct varobj * var )
extern

◆ varobj_value_is_changeable_p()

bool varobj_value_is_changeable_p ( const struct varobj * var)
extern

Variable Documentation

◆ ada_varobj_ops

const struct lang_varobj_ops ada_varobj_ops
extern

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

Referenced by ada_language::varobj_ops().

◆ c_varobj_ops

const struct lang_varobj_ops c_varobj_ops
extern

Definition at line 533 of file c-varobj.c.

Referenced by ada_name_of_variable(), and language_defn::varobj_ops().

◆ cplus_varobj_ops

const struct lang_varobj_ops cplus_varobj_ops
extern

Definition at line 944 of file c-varobj.c.

Referenced by cplus_language::varobj_ops().

◆ varobj_format_string

const char* varobj_format_string[]
extern

Definition at line 55 of file varobj.c.

Referenced by mi_cmd_var_set_format(), and mi_cmd_var_show_format().

◆ varobjdebug

unsigned int varobjdebug
extern

Definition at line 46 of file varobj.c.

Referenced by mi_cmd_var_create(), and uninstall_variable().