gdb/extension.h - gdb
Global variables defined
Data types defined
Macros defined
Source code
- #ifndef EXTENSION_H
- #define EXTENSION_H
- #include "mi/mi-cmds.h"
- #include "common/vec.h"
- struct breakpoint;
- struct command_line;
- struct frame_info;
- struct language_defn;
- struct objfile;
- struct extension_language_defn;
- struct type;
- struct ui_file;
- struct ui_out;
- struct value;
- struct value_print_options;
- typedef void script_sourcer_func (const struct extension_language_defn *,
- FILE *stream, const char *filename);
- typedef void objfile_script_sourcer_func
- (const struct extension_language_defn *,
- struct objfile *, FILE *stream, const char *filename);
- enum extension_language
- {
- EXT_LANG_NONE,
- EXT_LANG_GDB,
- EXT_LANG_PYTHON,
- EXT_LANG_GUILE
- };
- enum ext_lang_bt_status
- {
-
- EXT_LANG_BT_ERROR = -1,
-
- EXT_LANG_BT_OK = 1,
-
- EXT_LANG_BT_COMPLETED = 2,
-
- EXT_LANG_BT_NO_FILTERS = 3
- };
- enum frame_filter_flags
- {
-
- PRINT_LEVEL = 1,
-
- PRINT_FRAME_INFO = 2,
-
- PRINT_ARGS = 4,
-
- PRINT_LOCALS = 8,
- };
- enum ext_lang_frame_args
- {
-
- NO_VALUES = PRINT_NO_VALUES,
- MI_PRINT_ALL_VALUES = PRINT_ALL_VALUES,
-
- MI_PRINT_SIMPLE_VALUES = PRINT_SIMPLE_VALUES,
-
- CLI_SCALAR_VALUES,
-
- CLI_ALL_VALUES
- };
- enum ext_lang_bp_stop
- {
-
- EXT_LANG_BP_STOP_UNSET,
-
- EXT_LANG_BP_STOP_NO,
-
- EXT_LANG_BP_STOP_YES
- };
- struct ext_lang_type_printers
- {
-
- void *py_type_printers;
- };
- struct xmethod_worker
- {
-
- const struct extension_language_defn *extlang;
-
- void *data;
-
- struct value *value;
- };
- typedef struct xmethod_worker *xmethod_worker_ptr;
- DEF_VEC_P (xmethod_worker_ptr);
- typedef VEC (xmethod_worker_ptr) xmethod_worker_vec;
- extern const struct extension_language_defn extension_language_gdb;
- extern const struct extension_language_defn *get_ext_lang_defn
- (enum extension_language lang);
- extern const struct extension_language_defn *get_ext_lang_of_file
- (const char *file);
- extern int ext_lang_present_p (const struct extension_language_defn *);
- extern int ext_lang_initialized_p (const struct extension_language_defn *);
- extern void throw_ext_lang_unsupported
- (const struct extension_language_defn *);
- extern enum extension_language ext_lang_kind
- (const struct extension_language_defn *);
- extern const char *ext_lang_name (const struct extension_language_defn *);
- extern const char *ext_lang_capitalized_name
- (const struct extension_language_defn *);
- extern const char *ext_lang_suffix (const struct extension_language_defn *);
- extern const char *ext_lang_auto_load_suffix
- (const struct extension_language_defn *);
- extern script_sourcer_func *ext_lang_script_sourcer
- (const struct extension_language_defn *);
- extern objfile_script_sourcer_func *ext_lang_objfile_script_sourcer
- (const struct extension_language_defn *);
- extern int ext_lang_auto_load_enabled (const struct extension_language_defn *);
- extern void finish_ext_lang_initialization (void);
- extern void eval_ext_lang_from_control_command (struct command_line *cmd);
- extern void auto_load_ext_lang_scripts_for_objfile (struct objfile *);
- extern struct ext_lang_type_printers *start_ext_lang_type_printers (void);
- extern char *apply_ext_lang_type_printers (struct ext_lang_type_printers *,
- struct type *);
- extern void free_ext_lang_type_printers (struct ext_lang_type_printers *);
- extern int apply_ext_lang_val_pretty_printer
- (struct type *type, const gdb_byte *valaddr,
- int embedded_offset, CORE_ADDR address,
- struct ui_file *stream, int recurse,
- const struct value *val, const struct value_print_options *options,
- const struct language_defn *language);
- extern enum ext_lang_bt_status apply_ext_lang_frame_filter
- (struct frame_info *frame, int flags, enum ext_lang_frame_args args_type,
- struct ui_out *out, int frame_low, int frame_high);
- extern void preserve_ext_lang_values (struct objfile *, htab_t copied_types);
- extern const struct extension_language_defn *get_breakpoint_cond_ext_lang
- (struct breakpoint *b, enum extension_language skip_lang);
- extern int breakpoint_ext_lang_cond_says_stop (struct breakpoint *);
- extern struct value *invoke_xmethod (struct xmethod_worker *,
- struct value *,
- struct value **, int nargs);
- extern struct xmethod_worker *clone_xmethod_worker (struct xmethod_worker *);
- extern struct xmethod_worker *new_xmethod_worker
- (const struct extension_language_defn *extlang, void *data);
- extern void free_xmethod_worker (struct xmethod_worker *);
- extern void free_xmethod_worker_vec (void *vec);
- extern xmethod_worker_vec *get_matching_xmethod_workers
- (struct type *, const char *);
- extern struct type **get_xmethod_arg_types (struct xmethod_worker *, int *);
- #endif