diff options
author | Yegappan Lakshmanan <yegappan@yahoo.com> | 2021-12-03 11:09:29 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2021-12-03 11:09:29 +0000 |
commit | 8658c759f05b317707d56e3b65a5ef63930c7498 (patch) | |
tree | 124fcda187b5515dfaeba4c86aa7a5e0f0888686 /src/proto | |
parent | 021ef351c2127cf8aa5668a881435a0a12774644 (diff) |
patch 8.2.3725: cannot use a lambda for 'completefunc' and 'omnifunc'v8.2.3725
Problem: Cannot use a lambda for 'completefunc' and 'omnifunc'.
Solution: Implement lambda support. (Yegappan Lakshmanan, closes #9257)
Diffstat (limited to 'src/proto')
-rw-r--r-- | src/proto/insexpand.pro | 6 | ||||
-rw-r--r-- | src/proto/tag.pro | 2 | ||||
-rw-r--r-- | src/proto/userfunc.pro | 1 |
3 files changed, 8 insertions, 1 deletions
diff --git a/src/proto/insexpand.pro b/src/proto/insexpand.pro index 90b5a0732c..d455a98fd7 100644 --- a/src/proto/insexpand.pro +++ b/src/proto/insexpand.pro @@ -39,6 +39,12 @@ int ins_compl_bs(void); void ins_compl_addleader(int c); void ins_compl_addfrommatch(void); int ins_compl_prep(int c); +int set_completefunc_option(void); +void set_buflocal_cfu_callback(buf_T *buf); +int set_omnifunc_option(void); +void set_buflocal_ofu_callback(buf_T *buf); +int set_thesaurusfunc_option(void); +callback_T *get_insert_callback(int type); void f_complete(typval_T *argvars, typval_T *rettv); void f_complete_add(typval_T *argvars, typval_T *rettv); void f_complete_check(typval_T *argvars, typval_T *rettv); diff --git a/src/proto/tag.pro b/src/proto/tag.pro index e9827ea7e4..c8ef72101e 100644 --- a/src/proto/tag.pro +++ b/src/proto/tag.pro @@ -1,7 +1,7 @@ /* tag.c */ int set_tagfunc_option(void); void free_tagfunc_option(void); -void buf_set_tfu_callback(buf_T *buf); +void set_buflocal_tfu_callback(buf_T *buf); int do_tag(char_u *tag, int type, int count, int forceit, int verbose); void tag_freematch(void); void do_tags(exarg_T *eap); diff --git a/src/proto/userfunc.pro b/src/proto/userfunc.pro index dcc5b34d05..b5ea9b6662 100644 --- a/src/proto/userfunc.pro +++ b/src/proto/userfunc.pro @@ -28,6 +28,7 @@ int builtin_function(char_u *name, int len); int func_call(char_u *name, typval_T *args, partial_T *partial, dict_T *selfdict, typval_T *rettv); int get_callback_depth(void); int call_callback(callback_T *callback, int len, typval_T *rettv, int argcount, typval_T *argvars); +varnumber_T call_callback_retnr(callback_T *callback, int argcount, typval_T *argvars); void user_func_error(int error, char_u *name); int call_func(char_u *funcname, int len, typval_T *rettv, int argcount_in, typval_T *argvars_in, funcexe_T *funcexe); char_u *printable_func_name(ufunc_T *fp); |