diff options
author | bfredl <bjorn.linse@gmail.com> | 2024-02-10 12:07:37 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-10 12:07:37 +0100 |
commit | 607606e3bb7a435ac5a0eba2eb4abde8eff774bb (patch) | |
tree | d8c984815503a709cd5f122cf08aaa00d5b1a73d /src/nvim/usercmd.c | |
parent | 4948fa42efb90333a3b5738fd943b75f35415a7b (diff) | |
parent | 2d0e29614b4417e9764b9f7d588a50fe7f752749 (diff) | |
download | rneovim-607606e3bb7a435ac5a0eba2eb4abde8eff774bb.tar.gz rneovim-607606e3bb7a435ac5a0eba2eb4abde8eff774bb.tar.bz2 rneovim-607606e3bb7a435ac5a0eba2eb4abde8eff774bb.zip |
Merge pull request #27398 from bfredl/arena2
refactor(api): use arena for more stuff
Diffstat (limited to 'src/nvim/usercmd.c')
-rw-r--r-- | src/nvim/usercmd.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/nvim/usercmd.c b/src/nvim/usercmd.c index e20c3f6044..729e57cb2b 100644 --- a/src/nvim/usercmd.c +++ b/src/nvim/usercmd.c @@ -1136,6 +1136,20 @@ bool uc_split_args_iter(const char *arg, size_t arglen, size_t *end, char *buf, return true; } +size_t uc_nargs_upper_bound(const char *arg, size_t arglen) +{ + bool was_white = true; // space before first arg + size_t nargs = 0; + for (size_t i = 0; i < arglen; i++) { + bool is_white = ascii_iswhite(arg[i]); + if (was_white && !is_white) { + nargs++; + } + was_white = is_white; + } + return nargs; +} + /// split and quote args for <f-args> static char *uc_split_args(const char *arg, char **args, const size_t *arglens, size_t argc, size_t *lenp) |