diff options
Diffstat (limited to 'gdb/mi/mi-common.h')
-rw-r--r-- | gdb/mi/mi-common.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/gdb/mi/mi-common.h b/gdb/mi/mi-common.h index 9ee38b0..8fa9c9d 100644 --- a/gdb/mi/mi-common.h +++ b/gdb/mi/mi-common.h @@ -19,6 +19,8 @@ #ifndef MI_COMMON_H #define MI_COMMON_H +#include "interps.h" + struct mi_console_file; /* Represents the reason why GDB is sending an asynchronous command to @@ -50,8 +52,23 @@ enum async_reply_reason const char *async_reason_lookup (enum async_reply_reason reason); -struct mi_interp +/* An MI interpreter. */ + +class mi_interp final : public interp { +public: + mi_interp (const char *name) + : interp (name) + {} + + void init (bool top_level) override; + void resume () override; + void suspend () override; + gdb_exception exec (const char *command_str) override; + ui_out *interp_ui_out () override; + void set_logging (ui_file_up logfile, bool logging_redirect) override; + void pre_command_loop () override; + /* MI's output channels */ mi_console_file *out; mi_console_file *err; |