diff options
author | Tom Tromey <tom@tromey.com> | 2018-04-18 16:53:07 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2018-05-04 15:58:08 -0600 |
commit | 60b3cef2e49ba72dea55181a8ad0cb8dbf3f8a5b (patch) | |
tree | 1fecc6fa000b666ff29bd42d66d80ff1901db6e5 /gdb/breakpoint.c | |
parent | 7a2c85f25977ff9b11728ba85b1417538e22c246 (diff) | |
download | gdb-60b3cef2e49ba72dea55181a8ad0cb8dbf3f8a5b.zip gdb-60b3cef2e49ba72dea55181a8ad0cb8dbf3f8a5b.tar.gz gdb-60b3cef2e49ba72dea55181a8ad0cb8dbf3f8a5b.tar.bz2 |
Use function_view in cli-script.c
This changes some functions in cli-script.c to use function_view
rather than a function pointer and closure argument. This simplifies
the code a bit and is useful in a subsequent patch.
ChangeLog
2018-05-04 Tom Tromey <tom@tromey.com>
* tracepoint.c (actions_command): Update.
* mi/mi-cmd-break.c (mi_command_line_array)
(mi_command_line_array_cnt, mi_command_line_array_ptr)
(mi_read_next_line): Remove.
(mi_cmd_break_commands): Update.
* cli/cli-script.h (read_command_lines, read_command_lines_1): Use
function_view.
* cli/cli-script.c (get_command_line): Update.
(process_next_line): Use function_view. Constify.
(recurse_read_control_structure, read_command_lines)
(read_command_lines_1): Change argument types to function_view.
(do_define_command, document_command): Update.
* breakpoint.h (check_tracepoint_command): Don't declare.
* breakpoint.c (check_tracepoint_command): Remove.
(commands_command_1, create_tracepoint_from_upload): Update.
Diffstat (limited to 'gdb/breakpoint.c')
-rw-r--r-- | gdb/breakpoint.c | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index 72a3e16..d1955ec 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -1216,14 +1216,6 @@ breakpoint_set_task (struct breakpoint *b, int task) gdb::observers::breakpoint_modified.notify (b); } -void -check_tracepoint_command (char *line, void *closure) -{ - struct breakpoint *b = (struct breakpoint *) closure; - - validate_actionline (line, b); -} - static void commands_command_1 (const char *arg, int from_tty, struct command_line *control) @@ -1256,10 +1248,15 @@ commands_command_1 (const char *arg, int from_tty, "%s, one per line."), arg); - cmd = read_command_lines (str.c_str (), from_tty, 1, - (is_tracepoint (b) - ? check_tracepoint_command : 0), - b); + auto do_validate = [=] (const char *line) + { + validate_actionline (line, b); + }; + gdb::function_view<void (const char *)> validator; + if (is_tracepoint (b)) + validator = do_validate; + + cmd = read_command_lines (str.c_str (), from_tty, 1, validator); } } @@ -14783,7 +14780,7 @@ create_tracepoint_from_upload (struct uploaded_tp *utp) this_utp = utp; next_cmd = 0; - cmd_list = read_command_lines_1 (read_uploaded_action, 1, NULL, NULL); + cmd_list = read_command_lines_1 (read_uploaded_action, 1, NULL); breakpoint_set_commands (tp, std::move (cmd_list)); } |