feat(api): nvim_exec2(), deprecate nvim_exec() #19032

Problem:
The signature of nvim_exec() is not extensible per ":help api-contract".

Solution:
Introduce nvim_exec2() and deprecate nvim_exec().
This commit is contained in:
Evgeni Chasnovski
2023-03-25 18:58:48 +02:00
committed by GitHub
parent 257d894d75
commit fe9cbcb3a5
28 changed files with 218 additions and 158 deletions

View File

@@ -27,13 +27,26 @@
# include "api/deprecated.c.generated.h"
#endif
/// @deprecated Use nvim_exec2() instead.
/// @see nvim_exec2
String nvim_exec(uint64_t channel_id, String src, Boolean output, Error *err)
FUNC_API_SINCE(7)
FUNC_API_DEPRECATED_SINCE(11)
{
Dict(exec_opts) opts = { 0 };
opts.output = BOOLEAN_OBJ(output);
return exec_impl(channel_id, src, &opts, err);
}
/// @deprecated
/// @see nvim_exec
/// @see nvim_exec2
String nvim_command_output(uint64_t channel_id, String command, Error *err)
FUNC_API_SINCE(1)
FUNC_API_DEPRECATED_SINCE(7)
{
return nvim_exec(channel_id, command, true, err);
Dict(exec_opts) opts = { 0 };
opts.output = BOOLEAN_OBJ(true);
return exec_impl(channel_id, command, &opts, err);
}
/// @deprecated Use nvim_exec_lua() instead.