summaryrefslogtreecommitdiff
path: root/src/proto/userfunc.pro
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-11-05 18:45:46 +0100
committerBram Moolenaar <Bram@vim.org>2020-11-05 18:45:46 +0100
commitb4d16cb11d92b363503b71673921774548230e94 (patch)
treeca2eb1e8f5bcf42226196fef683929e2988a9077 /src/proto/userfunc.pro
parent66669fc6647201649e75a214e72b768fc86b7ed3 (diff)
downloadvim-git-b4d16cb11d92b363503b71673921774548230e94.tar.gz
patch 8.2.1956: Vim9: cannot specify argument types for lambdav8.2.1956
Problem: Vim9: cannot specify argument types for lambda. Solution: Allow adding argument types. Check arguments when calling a function reference.
Diffstat (limited to 'src/proto/userfunc.pro')
-rw-r--r--src/proto/userfunc.pro4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/proto/userfunc.pro b/src/proto/userfunc.pro
index a5b0367da..5bc7a4b90 100644
--- a/src/proto/userfunc.pro
+++ b/src/proto/userfunc.pro
@@ -1,10 +1,10 @@
/* userfunc.c */
void func_init(void);
hashtab_T *func_tbl_get(void);
-int get_function_args(char_u **argp, char_u endchar, garray_T *newargs, garray_T *argtypes, int *varargs, garray_T *default_args, int skip, exarg_T *eap, char_u **line_to_free);
+int get_function_args(char_u **argp, char_u endchar, garray_T *newargs, garray_T *argtypes, int types_optional, int *varargs, garray_T *default_args, int skip, exarg_T *eap, char_u **line_to_free);
char_u *get_lambda_name(void);
char_u *register_cfunc(cfunc_T cb, cfunc_free_T cb_free, void *state);
-int get_lambda_tv(char_u **arg, typval_T *rettv, evalarg_T *evalarg);
+int get_lambda_tv(char_u **arg, typval_T *rettv, int types_optional, evalarg_T *evalarg);
char_u *deref_func_name(char_u *name, int *lenp, partial_T **partialp, int no_autoload);
void emsg_funcname(char *ermsg, char_u *name);
int get_func_tv(char_u *name, int len, typval_T *rettv, char_u **arg, evalarg_T *evalarg, funcexe_T *funcexe);