comparison src/proto/eval.pro @ 17885:5e2d8840da11 v8.1.1939

patch 8.1.1939: code for handling v: variables in generic eval file Commit: https://github.com/vim/vim/commit/e5cdf153bcb348c68011b308c8988cea42d6ddeb Author: Bram Moolenaar <Bram@vim.org> Date: Thu Aug 29 22:09:46 2019 +0200 patch 8.1.1939: code for handling v: variables in generic eval file Problem: Code for handling v: variables in generic eval file. Solution: Move v: variables to evalvars.c. (Yegappan Lakshmanan, closes #4872)
author Bram Moolenaar <Bram@vim.org>
date Thu, 29 Aug 2019 22:15:04 +0200
parents d50a5faa75bd
children e4d3b6c466d4
comparison
equal deleted inserted replaced
17884:ae47d7c8416c 17885:5e2d8840da11
1 /* eval.c */ 1 /* eval.c */
2 varnumber_T num_divide(varnumber_T n1, varnumber_T n2); 2 varnumber_T num_divide(varnumber_T n1, varnumber_T n2);
3 varnumber_T num_modulus(varnumber_T n1, varnumber_T n2); 3 varnumber_T num_modulus(varnumber_T n1, varnumber_T n2);
4 void eval_init(void); 4 void eval_init(void);
5 void eval_clear(void); 5 void eval_clear(void);
6 void set_internal_string_var(char_u *name, char_u *value);
7 int var_redir_start(char_u *name, int append); 6 int var_redir_start(char_u *name, int append);
8 void var_redir_str(char_u *value, int value_len); 7 void var_redir_str(char_u *value, int value_len);
9 void var_redir_stop(void); 8 void var_redir_stop(void);
10 int eval_charconvert(char_u *enc_from, char_u *enc_to, char_u *fname_from, char_u *fname_to); 9 int eval_charconvert(char_u *enc_from, char_u *enc_to, char_u *fname_from, char_u *fname_to);
11 int eval_printexpr(char_u *fname, char_u *args); 10 int eval_printexpr(char_u *fname, char_u *args);
17 char_u *eval_to_string_skip(char_u *arg, char_u **nextcmd, int skip); 16 char_u *eval_to_string_skip(char_u *arg, char_u **nextcmd, int skip);
18 int skip_expr(char_u **pp); 17 int skip_expr(char_u **pp);
19 char_u *eval_to_string(char_u *arg, char_u **nextcmd, int convert); 18 char_u *eval_to_string(char_u *arg, char_u **nextcmd, int convert);
20 char_u *eval_to_string_safe(char_u *arg, char_u **nextcmd, int use_sandbox); 19 char_u *eval_to_string_safe(char_u *arg, char_u **nextcmd, int use_sandbox);
21 varnumber_T eval_to_number(char_u *expr); 20 varnumber_T eval_to_number(char_u *expr);
22 void list_vim_vars(int *first);
23 void list_script_vars(int *first);
24 int is_vimvarht(hashtab_T *ht);
25 int is_compatht(hashtab_T *ht);
26 void prepare_vimvar(int idx, typval_T *save_tv);
27 void restore_vimvar(int idx, typval_T *save_tv);
28 list_T *eval_spell_expr(char_u *badword, char_u *expr); 21 list_T *eval_spell_expr(char_u *badword, char_u *expr);
29 int get_spellword(list_T *list, char_u **pp); 22 int get_spellword(list_T *list, char_u **pp);
30 typval_T *eval_expr(char_u *arg, char_u **nextcmd); 23 typval_T *eval_expr(char_u *arg, char_u **nextcmd);
31 int call_vim_function(char_u *func, int argc, typval_T *argv, typval_T *rettv); 24 int call_vim_function(char_u *func, int argc, typval_T *argv, typval_T *rettv);
32 varnumber_T call_func_retnr(char_u *func, int argc, typval_T *argv); 25 varnumber_T call_func_retnr(char_u *func, int argc, typval_T *argv);
39 void *eval_for_line(char_u *arg, int *errp, char_u **nextcmdp, int skip); 32 void *eval_for_line(char_u *arg, int *errp, char_u **nextcmdp, int skip);
40 int next_for_item(void *fi_void, char_u *arg); 33 int next_for_item(void *fi_void, char_u *arg);
41 void free_for_info(void *fi_void); 34 void free_for_info(void *fi_void);
42 void set_context_for_expression(expand_T *xp, char_u *arg, cmdidx_T cmdidx); 35 void set_context_for_expression(expand_T *xp, char_u *arg, cmdidx_T cmdidx);
43 void del_menutrans_vars(void); 36 void del_menutrans_vars(void);
44 char_u *get_user_var_name(expand_T *xp, int idx);
45 int pattern_match(char_u *pat, char_u *text, int ic); 37 int pattern_match(char_u *pat, char_u *text, int ic);
46 int eval0(char_u *arg, typval_T *rettv, char_u **nextcmd, int evaluate); 38 int eval0(char_u *arg, typval_T *rettv, char_u **nextcmd, int evaluate);
47 int eval1(char_u **arg, typval_T *rettv, int evaluate); 39 int eval1(char_u **arg, typval_T *rettv, int evaluate);
48 int get_option_tv(char_u **arg, typval_T *rettv, int evaluate); 40 int get_option_tv(char_u **arg, typval_T *rettv, int evaluate);
49 char_u *partial_name(partial_T *pt); 41 char_u *partial_name(partial_T *pt);
67 int get_id_len(char_u **arg); 59 int get_id_len(char_u **arg);
68 int get_name_len(char_u **arg, char_u **alias, int evaluate, int verbose); 60 int get_name_len(char_u **arg, char_u **alias, int evaluate, int verbose);
69 char_u *find_name_end(char_u *arg, char_u **expr_start, char_u **expr_end, int flags); 61 char_u *find_name_end(char_u *arg, char_u **expr_start, char_u **expr_end, int flags);
70 int eval_isnamec(int c); 62 int eval_isnamec(int c);
71 int eval_isnamec1(int c); 63 int eval_isnamec1(int c);
72 void set_vim_var_nr(int idx, varnumber_T val);
73 typval_T *get_vim_var_tv(int idx);
74 varnumber_T get_vim_var_nr(int idx);
75 char_u *get_vim_var_str(int idx);
76 list_T *get_vim_var_list(int idx);
77 dict_T *get_vim_var_dict(int idx);
78 void set_vim_var_char(int c);
79 void set_vcount(long count, long count1, int set_prevcount);
80 void save_vimvars(vimvars_save_T *vvsave);
81 void restore_vimvars(vimvars_save_T *vvsave);
82 void set_vim_var_string(int idx, char_u *val, int len);
83 void set_vim_var_list(int idx, list_T *val);
84 void set_vim_var_dict(int idx, dict_T *val);
85 void set_reg_var(int c);
86 char_u *v_exception(char_u *oldval);
87 char_u *v_throwpoint(char_u *oldval);
88 char_u *set_cmdarg(exarg_T *eap, char_u *oldarg);
89 int handle_subscript(char_u **arg, typval_T *rettv, int evaluate, int verbose, char_u *start_leader, char_u **end_leaderp); 64 int handle_subscript(char_u **arg, typval_T *rettv, int evaluate, int verbose, char_u *start_leader, char_u **end_leaderp);
90 typval_T *alloc_tv(void); 65 typval_T *alloc_tv(void);
66 typval_T *alloc_string_tv(char_u *s);
91 void free_tv(typval_T *varp); 67 void free_tv(typval_T *varp);
92 void clear_tv(typval_T *varp); 68 void clear_tv(typval_T *varp);
93 void init_tv(typval_T *varp); 69 void init_tv(typval_T *varp);
94 varnumber_T tv_get_number(typval_T *varp); 70 varnumber_T tv_get_number(typval_T *varp);
95 varnumber_T tv_get_number_chk(typval_T *varp, int *denote); 71 varnumber_T tv_get_number_chk(typval_T *varp, int *denote);
96 float_T tv_get_float(typval_T *varp); 72 float_T tv_get_float(typval_T *varp);
97 char_u *tv_get_string(typval_T *varp); 73 char_u *tv_get_string(typval_T *varp);
98 char_u *tv_get_string_buf(typval_T *varp, char_u *buf); 74 char_u *tv_get_string_buf(typval_T *varp, char_u *buf);
99 char_u *tv_get_string_chk(typval_T *varp); 75 char_u *tv_get_string_chk(typval_T *varp);
100 char_u *tv_get_string_buf_chk(typval_T *varp, char_u *buf); 76 char_u *tv_get_string_buf_chk(typval_T *varp, char_u *buf);
101 dictitem_T *find_var(char_u *name, hashtab_T **htp, int no_autoload);
102 dictitem_T *find_var_in_ht(hashtab_T *ht, int htname, char_u *varname, int no_autoload);
103 hashtab_T *find_var_ht(char_u *name, char_u **varname);
104 void new_script_vars(scid_T id);
105 void init_var_dict(dict_T *dict, dictitem_T *dict_var, int scope);
106 void unref_var_dict(dict_T *dict);
107 void copy_tv(typval_T *from, typval_T *to); 77 void copy_tv(typval_T *from, typval_T *to);
108 int item_copy(typval_T *from, typval_T *to, int deep, int copyID); 78 int item_copy(typval_T *from, typval_T *to, int deep, int copyID);
109 void get_user_input(typval_T *argvars, typval_T *rettv, int inputdialog, int secret); 79 void get_user_input(typval_T *argvars, typval_T *rettv, int inputdialog, int secret);
110 void ex_echo(exarg_T *eap); 80 void ex_echo(exarg_T *eap);
111 void ex_echohl(exarg_T *eap); 81 void ex_echohl(exarg_T *eap);
115 win_T *find_tabwin(typval_T *wvp, typval_T *tvp, tabpage_T **ptp); 85 win_T *find_tabwin(typval_T *wvp, typval_T *tvp, tabpage_T **ptp);
116 char_u *find_option_end(char_u **arg, int *opt_flags); 86 char_u *find_option_end(char_u **arg, int *opt_flags);
117 char_u *autoload_name(char_u *name); 87 char_u *autoload_name(char_u *name);
118 int script_autoload(char_u *name, int reload); 88 int script_autoload(char_u *name, int reload);
119 void last_set_msg(sctx_T script_ctx); 89 void last_set_msg(sctx_T script_ctx);
120 void reset_v_option_vars(void);
121 void assert_error(garray_T *gap);
122 int typval_compare(typval_T *typ1, typval_T *typ2, exptype_T type, int type_is, int ic); 90 int typval_compare(typval_T *typ1, typval_T *typ2, exptype_T type, int type_is, int ic);
123 char_u *typval_tostring(typval_T *arg); 91 char_u *typval_tostring(typval_T *arg);
124 int modify_fname(char_u *src, int tilde_file, int *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen); 92 int modify_fname(char_u *src, int tilde_file, int *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen);
125 char_u *do_string_sub(char_u *str, char_u *pat, char_u *sub, typval_T *expr, char_u *flags); 93 char_u *do_string_sub(char_u *str, char_u *pat, char_u *sub, typval_T *expr, char_u *flags);
126 void filter_map(typval_T *argvars, typval_T *rettv, int map); 94 void filter_map(typval_T *argvars, typval_T *rettv, int map);