gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / gdb / mi / mi-parse.h
index 247fbb327ad286aef91ca4fc5ff4d5a197579751..dbc7be204727a011c5e90ab3f4ee3cc844fd46be 100644 (file)
@@ -1,5 +1,5 @@
 /* MI Command Set - MI Command Parser.
-   Copyright (C) 2000-2017 Free Software Foundation, Inc.
+   Copyright (C) 2000-2020 Free Software Foundation, Inc.
    Contributed by Cygnus Solutions (a Red Hat company).
 
    This file is part of GDB.
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-#ifndef MI_PARSE_H
-#define MI_PARSE_H
+#ifndef MI_MI_PARSE_H
+#define MI_MI_PARSE_H
 
-#include "run-time-clock.h"
+#include "gdbsupport/run-time-clock.h"
 #include <chrono>
+#include "mi-cmds.h"  /* For enum print_values.  */
 
 /* MI parser */
 
@@ -40,6 +41,11 @@ enum mi_command_type
 
 struct mi_parse
   {
+    mi_parse ();
+    ~mi_parse ();
+
+    DISABLE_COPY_AND_ASSIGN (mi_parse);
+
     enum mi_command_type op;
     char *command;
     char *token;
@@ -66,14 +72,11 @@ struct mi_parse
    the TOKEN field of the resultant mi_parse object, to be freed by
    mi_parse_free.  */
 
-extern struct mi_parse *mi_parse (const char *cmd, char **token);
-
-/* Free a command returned by mi_parse_command.  */
-
-extern void mi_parse_free (struct mi_parse *cmd);
+extern std::unique_ptr<struct mi_parse> mi_parse (const char *cmd,
+                                                 char **token);
 
 /* Parse a string argument into a print_values value.  */
 
 enum print_values mi_parse_print_values (const char *name);
 
-#endif
+#endif /* MI_MI_PARSE_H */
This page took 0.024647 seconds and 4 git commands to generate.