aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval/funcs.c
diff options
context:
space:
mode:
authorRaphael <glephunter@gmail.com>2023-12-12 19:06:22 +0800
committerGitHub <noreply@github.com>2023-12-12 19:06:22 +0800
commit1d4a5cd18537d054a564ff19b9361120597d9dd7 (patch)
tree7b094048bf64789ad11e89b141baadec222bcf79 /src/nvim/eval/funcs.c
parente69834744ba550100778890d0b4ecfc3c469af15 (diff)
downloadrneovim-1d4a5cd18537d054a564ff19b9361120597d9dd7.tar.gz
rneovim-1d4a5cd18537d054a564ff19b9361120597d9dd7.tar.bz2
rneovim-1d4a5cd18537d054a564ff19b9361120597d9dd7.zip
feat(eval): exists() function supports checking v:lua functions (#26485)
Problem: Vimscript function exists() can't check v:lua functions. Solution: Add support for v:lua functions to exists().
Diffstat (limited to 'src/nvim/eval/funcs.c')
-rw-r--r--src/nvim/eval/funcs.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c
index c35e0b2ada..1468c5564e 100644
--- a/src/nvim/eval/funcs.c
+++ b/src/nvim/eval/funcs.c
@@ -1716,6 +1716,8 @@ static void f_exists(typval_T *argvars, typval_T *rettv, EvalFuncData fptr)
} else {
n = au_exists(p + 1);
}
+ } else if (strncmp(p, "v:lua.", 6) == 0 && nlua_func_exists(p + 6)) {
+ n = true;
} else { // Internal variable.
n = var_exists(p);
}