114 error (
_(
"-var-create: Usage: NAME FRAME EXPRESSION."));
116 name = xstrdup (argv[0]);
121 frame = xstrdup (argv[1]);
124 expr = xstrdup (argv[2]);
127 if (strcmp (name,
"-") == 0)
132 else if (!isalpha (*name))
133 error (
_(
"-var-create: name of object must begin with a letter"));
135 if (strcmp (frame,
"*") == 0)
137 else if (strcmp (frame,
"@") == 0)
147 "Name=\"%s\", Frame=\"%s\" (%s), Expression=\"%s\"\n",
153 error (
_(
"-var-create: unable to create variable object"));
168 int children_only_p = 0;
172 if (argc < 1 || argc > 2)
173 error (
_(
"-var-delete: Usage: [-c] EXPRESSION."));
175 name = xstrdup (argv[0]);
184 if (strcmp (name,
"-c") == 0)
185 error (
_(
"-var-delete: Missing required "
186 "argument after '-c': variable object name"));
188 error (
_(
"-var-delete: Illegal variable object name"));
195 if (strcmp (name,
"-c") != 0)
196 error (
_(
"-var-delete: Invalid option."));
199 name = xstrdup (argv[1]);
226 if (strncmp (arg,
"natural", len) == 0)
228 else if (strncmp (arg,
"binary", len) == 0)
230 else if (strncmp (arg,
"decimal", len) == 0)
232 else if (strncmp (arg,
"hexadecimal", len) == 0)
234 else if (strncmp (arg,
"octal", len) == 0)
238 error (
_(
"Must specify the format as: \"natural\", "
239 "\"binary\", \"decimal\", \"hexadecimal\", or \"octal\""));
251 error (
_(
"-var-set-format: Usage: NAME FORMAT."));
276 error (
_(
"Usage: NAME VISUALIZER_FUNCTION."));
281 error (
_(
"Variable object not found"));
293 error (
_(
"-var-set-format: Usage: NAME FROZEN_FLAG."));
297 if (strcmp (argv[1],
"0") == 0)
299 else if (strcmp (argv[1],
"1") == 0)
302 error (
_(
"Invalid flag value"));
319 error (
_(
"-var-show-format: Usage: NAME."));
337 error (
_(
"-var-info-num-children: Usage: NAME."));
389 if (argc < 1 || argc > 4)
390 error (
_(
"-var-list-children: Usage: "
391 "[PRINT_VALUES] NAME [FROM TO]"));
394 if (argc == 1 || argc == 3)
401 from = atoi (argv[argc - 2]);
402 to = atoi (argv[argc - 1]);
410 children = varobj_list_children (var, &from, &to);
412 if (argc == 2 || argc == 4)
421 xfree (display_hint);
426 struct cleanup *cleanup_children;
458 error (
_(
"-var-info-type: Usage: NAME."));
477 error (
_(
"Usage: NAME."));
496 error (
_(
"-var-info-expression: Usage: NAME."));
519 error (
_(
"-var-show-attributes: Usage: NAME."));
526 if (attr & 0x00000001)
529 attstr =
"noneditable";
549 static const struct mi_opt opts[] =
561 int opt =
mi_getopt (
"-var-evaluate-expression", argc, argv,
566 switch ((
enum opt) opt)
570 error (
_(
"Cannot specify format more than once"));
579 error (
_(
"Usage: [-f FORMAT] NAME"));
582 error (
_(
"Garbage at end of command"));
612 error (
_(
"-var-assign: Usage: NAME EXPRESSION."));
618 error (
_(
"-var-assign: Variable object is not editable"));
620 expression = xstrdup (argv[1]);
629 error (
_(
"-var-assign: Could not assign "
630 "expression to variable object"));
653 int thread_id, thread_stopped;
684 if (argc != 1 && argc != 2)
685 error (
_(
"-var-update: Usage: [PRINT_VALUES] NAME."));
705 if ((*name ==
'*' || *name ==
'@') && (*(name + 1) ==
'\0'))
740 changes = varobj_update (&var, is_explicit);
796 xfree (display_hint);
810 struct cleanup *cleanup;
815 struct cleanup *cleanup_child;
837 error (
_(
"-enable-pretty-printing: no arguments allowed"));
849 error (
_(
"-var-set-update-range: Usage: VAROBJ FROM TO"));
852 from = atoi (argv[1]);
int varobj_delete(struct varobj *var, char ***dellist, int only_children)
int varobj_get_frozen(const struct varobj *var)
char * hex_string(LONGEST num)
void all_root_varobjs(void(*func)(struct varobj *var, void *data), void *data)
struct thread_info * find_thread_id(int num)
CORE_ADDR string_to_core_addr(const char *my_string)
void ui_out_field_int(struct ui_out *uiout, const char *fldname, int value)
int ptid_equal(ptid_t ptid1, ptid_t ptid2)
char * varobj_gen_name(void)
void mi_cmd_var_set_format(char *command, char **argv, int argc)
enum varobj_display_formats varobj_set_display_format(struct varobj *var, enum varobj_display_formats format)
char * varobj_get_formatted_value(struct varobj *var, enum varobj_display_formats format)
void varobj_set_child_range(struct varobj *var, int from, int to)
void mi_cmd_var_assign(char *command, char **argv, int argc)
void varobj_set_visualizer(struct varobj *var, const char *visualizer)
void mi_cmd_var_info_expression(char *command, char **argv, int argc)
void mi_cmd_var_set_update_range(char *command, char **argv, int argc)
void mi_cmd_enable_pretty_printing(char *command, char **argv, int argc)
void null_cleanup(void *arg)
void mi_cmd_var_show_format(char *command, char **argv, int argc)
void mi_cmd_var_update(char *command, char **argv, int argc)
int varobj_get_thread_id(const struct varobj *var)
void mi_cmd_var_set_frozen(char *command, char **argv, int argc)
#define VEC_iterate(T, V, I, P)
int is_stopped(ptid_t ptid)
struct type * check_typedef(struct type *type)
enum varobj_scope_status status
int mi_getopt(const char *prefix, int argc, char **argv, const struct mi_opt *opts, int *oind, char **oarg)
const struct language_defn * varobj_get_language(const struct varobj *var)
struct cleanup * make_cleanup_restore_integer(int *variable)
struct cleanup * make_cleanup_ui_out_list_begin_end(struct ui_out *uiout, const char *id)
struct cleanup * make_cleanup_ui_out_tuple_begin_end(struct ui_out *uiout, const char *id)
char * varobj_get_type(struct varobj *var)
void fprintf_unfiltered(struct ui_file *stream, const char *format,...)
void print_expression(struct expression *exp, struct ui_file *stream)
void mi_cmd_var_info_type(char *command, char **argv, int argc)
void free_current_contents(void *ptr)
struct cleanup * make_cleanup(make_cleanup_ftype *function, void *arg)
char * varobj_format_string[]
static void print_varobj(struct varobj *var, enum print_values print_values, int print_expression)
char * varobj_get_expression(const struct varobj *var)
int varobj_has_more(const struct varobj *var, int to)
static enum varobj_display_formats mi_parse_format(const char *arg)
struct varobj * varobj_create(char *objname, char *expression, CORE_ADDR frame, enum varobj_type type)
void mi_cmd_var_evaluate_expression(char *command, char **argv, int argc)
struct ui_file * gdb_stdlog
static void mi_cmd_var_update_iter(struct varobj *var, void *data_pointer)
const char * la_natural_name
enum varobj_display_formats varobj_get_display_format(const struct varobj *var)
void varobj_enable_pretty_printing(void)
int varobj_is_dynamic_p(const struct varobj *var)
static int mi_print_value_p(struct varobj *var, enum print_values print_values)
#define TYPE_CODE(thistype)
int mi_version(struct ui_out *uiout)
struct varobj * varobj_get_handle(char *objname)
static void varobj_update_one(struct varobj *var, enum print_values print_values, int is_explicit)
int varobj_get_num_children(struct varobj *var)
void mi_cmd_var_create(char *command, char **argv, int argc)
int varobj_set_value(struct varobj *var, char *expression)
char * varobj_get_value(struct varobj *var)
void mi_cmd_var_delete(char *command, char **argv, int argc)
enum print_values print_values
char * varobj_get_objname(const struct varobj *var)
struct type * varobj_get_gdb_type(const struct varobj *var)
void mi_cmd_var_show_attributes(char *command, char **argv, int argc)
void mi_cmd_var_info_path_expression(char *command, char **argv, int argc)
char * varobj_get_path_expr(const struct varobj *var)
void ui_out_field_string(struct ui_out *uiout, const char *fldname, const char *string)
char * varobj_get_display_hint(const struct varobj *var)
struct ui_out * current_uiout
void mi_cmd_var_info_num_children(char *command, char **argv, int argc)
void varobj_get_child_range(const struct varobj *var, int *from, int *to)
enum varobj_display_formats format
int varobj_floating_p(const struct varobj *var)
int varobj_get_attributes(const struct varobj *var)
enum print_values mi_parse_print_values(const char *name)
void error(const char *fmt,...)
void mi_cmd_var_list_children(char *command, char **argv, int argc)
int varobj_editable_p(const struct varobj *var)
void do_cleanups(struct cleanup *old_chain)
void varobj_set_frozen(struct varobj *var, int frozen)
void mi_cmd_var_set_visualizer(char *command, char **argv, int argc)
const ULONGEST const LONGEST len