/* eval.c */
extern void eval_init __ARGS((void));
extern void eval_clear __ARGS((void));
extern char_u *func_name __ARGS((void *cookie));
extern linenr_T *func_breakpoint __ARGS((void *cookie));
extern int *func_dbg_tick __ARGS((void *cookie));
extern int func_level __ARGS((void *cookie));
extern int current_func_returned __ARGS((void));
extern void set_internal_string_var __ARGS((char_u *name, char_u *value));
extern int var_redir_start __ARGS((char_u *name, int append));
extern void var_redir_str __ARGS((char_u *value, int len));
extern void var_redir_stop __ARGS((void));
extern int eval_charconvert __ARGS((char_u *enc_from, char_u *enc_to, char_u *fname_from, char_u *fname_to));
extern int eval_printexpr __ARGS((char_u *fname, char_u *args));
extern void eval_diff __ARGS((char_u *origfile, char_u *newfile, char_u *outfile));
extern void eval_patch __ARGS((char_u *origfile, char_u *difffile, char_u *outfile));
extern int eval_to_bool __ARGS((char_u *arg, int *error, char_u **nextcmd, int skip));
extern char_u *eval_to_string_skip __ARGS((char_u *arg, char_u **nextcmd, int skip));
extern int skip_expr __ARGS((char_u **pp));
extern char_u *eval_to_string __ARGS((char_u *arg, char_u **nextcmd, int dolist));
extern char_u *eval_to_string_safe __ARGS((char_u *arg, char_u **nextcmd, int use_sandbox));
extern int eval_to_number __ARGS((char_u *expr));
extern list_T *eval_spell_expr __ARGS((char_u *badword, char_u *expr));
extern int get_spellword __ARGS((list_T *list, char_u **pp));
extern typval_T *eval_expr __ARGS((char_u *arg, char_u **nextcmd));
extern void *call_func_retstr __ARGS((char_u *func, int argc, char_u **argv, int safe));
extern long call_func_retnr __ARGS((char_u *func, int argc, char_u **argv, int safe));
extern void *call_func_retlist __ARGS((char_u *func, int argc, char_u **argv, int safe));
extern void *save_funccal __ARGS((void));
extern void restore_funccal __ARGS((void *vfc));
extern void prof_child_enter __ARGS((proftime_T *tm));
extern void prof_child_exit __ARGS((proftime_T *tm));
extern int eval_foldexpr __ARGS((char_u *arg, int *cp));
extern void ex_let __ARGS((exarg_T *eap));
extern void *eval_for_line __ARGS((char_u *arg, int *errp, char_u **nextcmdp, int skip));
extern int next_for_item __ARGS((void *fi_void, char_u *arg));
extern void free_for_info __ARGS((void *fi_void));
extern void set_context_for_expression __ARGS((expand_T *xp, char_u *arg, cmdidx_T cmdidx));
extern void ex_call __ARGS((exarg_T *eap));
extern void ex_unlet __ARGS((exarg_T *eap));
extern void ex_lockvar __ARGS((exarg_T *eap));
extern int do_unlet __ARGS((char_u *name, int forceit));
extern void del_menutrans_vars __ARGS((void));
extern char_u *get_user_var_name __ARGS((expand_T *xp, int idx));
extern list_T *list_alloc __ARGS((void));
extern void list_unref __ARGS((list_T *l));
extern void list_free __ARGS((list_T *l, int recurse));
extern dictitem_T *dict_lookup __ARGS((hashitem_T *hi));
extern int list_append_dict __ARGS((list_T *list, dict_T *dict));
extern int garbage_collect __ARGS((void));
extern dict_T *dict_alloc __ARGS((void));
extern int dict_add_nr_str __ARGS((dict_T *d, char *key, long nr, char_u *str));
extern char_u *get_dict_string __ARGS((dict_T *d, char_u *key, int save));
extern long get_dict_number __ARGS((dict_T *d, char_u *key));
extern char_u *get_function_name __ARGS((expand_T *xp, int idx));
extern char_u *get_expr_name __ARGS((expand_T *xp, int idx));
extern long do_searchpair __ARGS((char_u *spat, char_u *mpat, char_u *epat, int dir, char_u *skip, int flags, pos_T *match_pos, linenr_T lnum_stop));
extern void set_vim_var_nr __ARGS((int idx, long val));
extern long get_vim_var_nr __ARGS((int idx));
extern char_u *get_vim_var_str __ARGS((int idx));
extern void set_vcount __ARGS((long count, long count1));
extern void set_vim_var_string __ARGS((int idx, char_u *val, int len));
extern void set_reg_var __ARGS((int c));
extern char_u *v_exception __ARGS((char_u *oldval));
extern char_u *v_throwpoint __ARGS((char_u *oldval));
extern char_u *set_cmdarg __ARGS((exarg_T *eap, char_u *oldarg));
extern void free_tv __ARGS((typval_T *varp));
extern void clear_tv __ARGS((typval_T *varp));
extern long get_tv_number_chk __ARGS((typval_T *varp, int *denote));
extern char_u *get_tv_string_chk __ARGS((typval_T *varp));
extern char_u *get_var_value __ARGS((char_u *name));
extern void new_script_vars __ARGS((scid_T id));
extern void init_var_dict __ARGS((dict_T *dict, dictitem_T *dict_var));
extern void vars_clear __ARGS((hashtab_T *ht));
extern void ex_echo __ARGS((exarg_T *eap));
extern void ex_echohl __ARGS((exarg_T *eap));
extern void ex_execute __ARGS((exarg_T *eap));
extern void ex_function __ARGS((exarg_T *eap));
extern void free_all_functions __ARGS((void));
extern void func_dump_profile __ARGS((FILE *fd));
extern char_u *get_user_func_name __ARGS((expand_T *xp, int idx));
extern void ex_delfunction __ARGS((exarg_T *eap));
extern void ex_return __ARGS((exarg_T *eap));
extern int do_return __ARGS((exarg_T *eap, int reanimate, int is_cmd, void *rettv));
extern void discard_pending_return __ARGS((void *rettv));
extern char_u *get_return_cmd __ARGS((void *rettv));
extern char_u *get_func_line __ARGS((int c, void *cookie, int indent));
extern void func_line_start __ARGS((void *cookie));
extern void func_line_exec __ARGS((void *cookie));
extern void func_line_end __ARGS((void *cookie));
extern int func_has_ended __ARGS((void *cookie));
extern int func_has_abort __ARGS((void *cookie));
extern int read_viminfo_varlist __ARGS((vir_T *virp, int writing));
extern void write_viminfo_varlist __ARGS((FILE *fp));
extern int store_session_globals __ARGS((FILE *fd));
extern void last_set_msg __ARGS((scid_T scriptID));
extern int modify_fname __ARGS((char_u *src, int *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen));
extern char_u *do_string_sub __ARGS((char_u *str, char_u *pat, char_u *sub, char_u *flags));
/* vim: set ft=c : */
