Mercurial > vim
comparison src/proto/userfunc.pro @ 9626:172131507c85 v7.4.2090
commit https://github.com/vim/vim/commit/df48fb456fb6bf63d94cad9b302ff01d8ee8d311
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jul 22 21:50:18 2016 +0200
patch 7.4.2090
Problem: Using submatch() in a lambda passed to substitute() is verbose.
Solution: Use a static list and pass it as an optional argument to the
function. Fix memory leak.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 22 Jul 2016 22:00:07 +0200 |
parents | 86af4a48c00a |
children | 8c2553beff0f |
comparison
equal
deleted
inserted
replaced
9625:4c2524dd2403 | 9626:172131507c85 |
---|---|
3 int get_lambda_tv(char_u **arg, typval_T *rettv, int evaluate); | 3 int get_lambda_tv(char_u **arg, typval_T *rettv, int evaluate); |
4 char_u *deref_func_name(char_u *name, int *lenp, partial_T **partialp, int no_autoload); | 4 char_u *deref_func_name(char_u *name, int *lenp, partial_T **partialp, int no_autoload); |
5 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); | 5 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 void free_all_functions(void); | 6 void free_all_functions(void); |
7 int func_call(char_u *name, typval_T *args, partial_T *partial, dict_T *selfdict, typval_T *rettv); | 7 int func_call(char_u *name, typval_T *args, partial_T *partial, dict_T *selfdict, typval_T *rettv); |
8 int call_func(char_u *funcname, int len, typval_T *rettv, int argcount_in, typval_T *argvars_in, linenr_T firstline, linenr_T lastline, int *doesrange, int evaluate, partial_T *partial, dict_T *selfdict_in); | 8 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); |
9 void ex_function(exarg_T *eap); | 9 void ex_function(exarg_T *eap); |
10 int eval_fname_script(char_u *p); | 10 int eval_fname_script(char_u *p); |
11 int translated_function_exists(char_u *name); | 11 int translated_function_exists(char_u *name); |
12 int function_exists(char_u *name); | 12 int function_exists(char_u *name); |
13 char_u *get_expanded_name(char_u *name, int check); | 13 char_u *get_expanded_name(char_u *name, int check); |