Mercurial > vim
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); |