comparison src/proto/userfunc.pro @ 17606:ff097edaae89 v8.1.1800

patch 8.1.1800: function call functions have too many arguments commit https://github.com/vim/vim/commit/c6538bcc1cdd1fb83732f22fdc69bd9bb66f968a Author: Bram Moolenaar <Bram@vim.org> Date: Sat Aug 3 18:17:11 2019 +0200 patch 8.1.1800: function call functions have too many arguments Problem: Function call functions have too many arguments. Solution: Pass values in a funcexe_T struct.
author Bram Moolenaar <Bram@vim.org>
date Sat, 03 Aug 2019 18:30:07 +0200
parents 8f44c630c366
children e59ff7b5d7a7
comparison
equal deleted inserted replaced
17605:bb1b495f4e05 17606:ff097edaae89
1 /* userfunc.c */ 1 /* userfunc.c */
2 void func_init(void); 2 void func_init(void);
3 hashtab_T *func_tbl_get(void); 3 hashtab_T *func_tbl_get(void);
4 int get_lambda_tv(char_u **arg, typval_T *rettv, int evaluate); 4 int get_lambda_tv(char_u **arg, typval_T *rettv, int evaluate);
5 char_u *deref_func_name(char_u *name, int *lenp, partial_T **partialp, int no_autoload); 5 char_u *deref_func_name(char_u *name, int *lenp, partial_T **partialp, int no_autoload);
6 int get_func_tv(char_u *name, int len, typval_T *rettv, char_u **arg, linenr_T firstline, linenr_T lastline, int *doesrange, int evaluate, partial_T *partial, dict_T *selfdict); 6 int get_func_tv(char_u *name, int len, typval_T *rettv, char_u **arg, funcexe_T *funcexe);
7 ufunc_T *find_func(char_u *name); 7 ufunc_T *find_func(char_u *name);
8 void save_funccal(funccal_entry_T *entry); 8 void save_funccal(funccal_entry_T *entry);
9 void restore_funccal(void); 9 void restore_funccal(void);
10 funccall_T *get_current_funccal(void); 10 funccall_T *get_current_funccal(void);
11 void free_all_functions(void); 11 void free_all_functions(void);
12 int func_call(char_u *name, typval_T *args, partial_T *partial, dict_T *selfdict, typval_T *rettv); 12 int func_call(char_u *name, typval_T *args, partial_T *partial, dict_T *selfdict, typval_T *rettv);
13 int call_callback(callback_T *callback, int len, typval_T *rettv, int argcount, typval_T *argvars, int (*argv_func)(int, typval_T *, int), linenr_T firstline, linenr_T lastline, int *doesrange, int evaluate, dict_T *selfdict); 13 int call_callback(callback_T *callback, int len, typval_T *rettv, int argcount, typval_T *argvars);
14 int call_func(char_u *funcname, int len, typval_T *rettv, int argcount_in, typval_T *argvars_in, int (*argv_func)(int, typval_T *, int), linenr_T firstline, linenr_T lastline, int *doesrange, int evaluate, partial_T *partial, dict_T *selfdict_in); 14 int call_func(char_u *funcname, int len, typval_T *rettv, int argcount_in, typval_T *argvars_in, funcexe_T *funcexe);
15 char_u *trans_function_name(char_u **pp, int skip, int flags, funcdict_T *fdp, partial_T **partial); 15 char_u *trans_function_name(char_u **pp, int skip, int flags, funcdict_T *fdp, partial_T **partial);
16 void ex_function(exarg_T *eap); 16 void ex_function(exarg_T *eap);
17 int eval_fname_script(char_u *p); 17 int eval_fname_script(char_u *p);
18 int translated_function_exists(char_u *name); 18 int translated_function_exists(char_u *name);
19 int function_exists(char_u *name, int no_deref); 19 int function_exists(char_u *name, int no_deref);