mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
patch 7.4.2063
Problem: eval.c is still too big. Solution: Split off internal functions to evalfunc.c.
This commit is contained in:
2
Filelist
2
Filelist
@@ -23,6 +23,7 @@ SRC_ALL = \
|
|||||||
src/digraph.c \
|
src/digraph.c \
|
||||||
src/edit.c \
|
src/edit.c \
|
||||||
src/eval.c \
|
src/eval.c \
|
||||||
|
src/evalfunc.c \
|
||||||
src/ex_cmds.c \
|
src/ex_cmds.c \
|
||||||
src/ex_cmds.h \
|
src/ex_cmds.h \
|
||||||
src/ex_cmds2.c \
|
src/ex_cmds2.c \
|
||||||
@@ -134,6 +135,7 @@ SRC_ALL = \
|
|||||||
src/proto/digraph.pro \
|
src/proto/digraph.pro \
|
||||||
src/proto/edit.pro \
|
src/proto/edit.pro \
|
||||||
src/proto/eval.pro \
|
src/proto/eval.pro \
|
||||||
|
src/proto/evalfunc.pro \
|
||||||
src/proto/ex_cmds.pro \
|
src/proto/ex_cmds.pro \
|
||||||
src/proto/ex_cmds2.pro \
|
src/proto/ex_cmds2.pro \
|
||||||
src/proto/ex_docmd.pro \
|
src/proto/ex_docmd.pro \
|
||||||
|
@@ -548,6 +548,7 @@ vimobj = \
|
|||||||
$(OBJDIR)\digraph.obj \
|
$(OBJDIR)\digraph.obj \
|
||||||
$(OBJDIR)\edit.obj \
|
$(OBJDIR)\edit.obj \
|
||||||
$(OBJDIR)\eval.obj \
|
$(OBJDIR)\eval.obj \
|
||||||
|
$(OBJDIR)\evalfunc.obj \
|
||||||
$(OBJDIR)\ex_cmds.obj \
|
$(OBJDIR)\ex_cmds.obj \
|
||||||
$(OBJDIR)\ex_cmds2.obj \
|
$(OBJDIR)\ex_cmds2.obj \
|
||||||
$(OBJDIR)\ex_docmd.obj \
|
$(OBJDIR)\ex_docmd.obj \
|
||||||
|
@@ -615,6 +615,7 @@ OBJ = \
|
|||||||
$(OUTDIR)/digraph.o \
|
$(OUTDIR)/digraph.o \
|
||||||
$(OUTDIR)/edit.o \
|
$(OUTDIR)/edit.o \
|
||||||
$(OUTDIR)/eval.o \
|
$(OUTDIR)/eval.o \
|
||||||
|
$(OUTDIR)/evalfunc.o \
|
||||||
$(OUTDIR)/ex_cmds.o \
|
$(OUTDIR)/ex_cmds.o \
|
||||||
$(OUTDIR)/ex_cmds2.o \
|
$(OUTDIR)/ex_cmds2.o \
|
||||||
$(OUTDIR)/ex_docmd.o \
|
$(OUTDIR)/ex_docmd.o \
|
||||||
|
@@ -37,6 +37,7 @@ SRC = \
|
|||||||
digraph.c \
|
digraph.c \
|
||||||
edit.c \
|
edit.c \
|
||||||
eval.c \
|
eval.c \
|
||||||
|
evalfunc.c \
|
||||||
ex_cmds.c \
|
ex_cmds.c \
|
||||||
ex_cmds2.c \
|
ex_cmds2.c \
|
||||||
ex_docmd.c \
|
ex_docmd.c \
|
||||||
@@ -91,6 +92,7 @@ OBJ = o/arabic.o \
|
|||||||
o/digraph.o \
|
o/digraph.o \
|
||||||
o/edit.o \
|
o/edit.o \
|
||||||
o/eval.o \
|
o/eval.o \
|
||||||
|
o/evalfunc.o \
|
||||||
o/ex_cmds.o \
|
o/ex_cmds.o \
|
||||||
o/ex_cmds2.o \
|
o/ex_cmds2.o \
|
||||||
o/ex_docmd.o \
|
o/ex_docmd.o \
|
||||||
@@ -175,6 +177,8 @@ o/edit.o: edit.c $(SYMS)
|
|||||||
|
|
||||||
o/eval.o: eval.c $(SYMS)
|
o/eval.o: eval.c $(SYMS)
|
||||||
|
|
||||||
|
o/evalfunc.o: evalfunc.c $(SYMS)
|
||||||
|
|
||||||
o/ex_cmds.o: ex_cmds.c $(SYMS)
|
o/ex_cmds.o: ex_cmds.c $(SYMS)
|
||||||
|
|
||||||
o/ex_cmds2.o: ex_cmds2.c $(SYMS)
|
o/ex_cmds2.o: ex_cmds2.c $(SYMS)
|
||||||
|
@@ -221,6 +221,7 @@ LINK32_OBJS= \
|
|||||||
"$(INTDIR)/digraph.obj" \
|
"$(INTDIR)/digraph.obj" \
|
||||||
"$(INTDIR)/edit.obj" \
|
"$(INTDIR)/edit.obj" \
|
||||||
"$(INTDIR)/eval.obj" \
|
"$(INTDIR)/eval.obj" \
|
||||||
|
"$(INTDIR)/evalfunc.obj" \
|
||||||
"$(INTDIR)/ex_cmds.obj" \
|
"$(INTDIR)/ex_cmds.obj" \
|
||||||
"$(INTDIR)/ex_cmds2.obj" \
|
"$(INTDIR)/ex_cmds2.obj" \
|
||||||
"$(INTDIR)/ex_docmd.obj" \
|
"$(INTDIR)/ex_docmd.obj" \
|
||||||
@@ -379,6 +380,10 @@ SOURCE=.\eval.c
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
|
SOURCE=.\evalfunc.c
|
||||||
|
# End Source File
|
||||||
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=.\ex_cmds.c
|
SOURCE=.\ex_cmds.c
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
@@ -47,6 +47,7 @@ SRC = arabic.c \
|
|||||||
digraph.c \
|
digraph.c \
|
||||||
edit.c \
|
edit.c \
|
||||||
eval.c \
|
eval.c \
|
||||||
|
evalfunc.c \
|
||||||
ex_cmds.c \
|
ex_cmds.c \
|
||||||
ex_cmds2.c \
|
ex_cmds2.c \
|
||||||
ex_docmd.c \
|
ex_docmd.c \
|
||||||
@@ -103,6 +104,7 @@ OBJ = obj/arabic.o \
|
|||||||
obj/digraph.o \
|
obj/digraph.o \
|
||||||
obj/edit.o \
|
obj/edit.o \
|
||||||
obj/eval.o \
|
obj/eval.o \
|
||||||
|
obj/evalfunc.o \
|
||||||
obj/ex_cmds.o \
|
obj/ex_cmds.o \
|
||||||
obj/ex_cmds2.o \
|
obj/ex_cmds2.o \
|
||||||
obj/ex_docmd.o \
|
obj/ex_docmd.o \
|
||||||
@@ -157,6 +159,7 @@ PRO = proto/arabic.pro \
|
|||||||
proto/digraph.pro \
|
proto/digraph.pro \
|
||||||
proto/edit.pro \
|
proto/edit.pro \
|
||||||
proto/eval.pro \
|
proto/eval.pro \
|
||||||
|
proto/evalfunc.pro \
|
||||||
proto/ex_cmds.pro \
|
proto/ex_cmds.pro \
|
||||||
proto/ex_cmds2.pro \
|
proto/ex_cmds2.pro \
|
||||||
proto/ex_docmd.pro \
|
proto/ex_docmd.pro \
|
||||||
@@ -277,6 +280,9 @@ obj/edit.o: edit.c
|
|||||||
obj/eval.o: eval.c
|
obj/eval.o: eval.c
|
||||||
$(CCSYM) $@ eval.c
|
$(CCSYM) $@ eval.c
|
||||||
|
|
||||||
|
obj/evalfunc.o: evalfunc.c
|
||||||
|
$(CCSYM) $@ evalfunc.c
|
||||||
|
|
||||||
obj/ex_cmds.o: ex_cmds.c
|
obj/ex_cmds.o: ex_cmds.c
|
||||||
$(CCSYM) $@ ex_cmds.c
|
$(CCSYM) $@ ex_cmds.c
|
||||||
|
|
||||||
|
@@ -35,6 +35,7 @@ SRC = arabic.c \
|
|||||||
digraph.c \
|
digraph.c \
|
||||||
edit.c \
|
edit.c \
|
||||||
eval.c \
|
eval.c \
|
||||||
|
evalfunc.c \
|
||||||
ex_cmds.c \
|
ex_cmds.c \
|
||||||
ex_cmds2.c \
|
ex_cmds2.c \
|
||||||
ex_docmd.c \
|
ex_docmd.c \
|
||||||
|
@@ -559,6 +559,7 @@ OBJ = \
|
|||||||
$(OUTDIR)\digraph.obj \
|
$(OUTDIR)\digraph.obj \
|
||||||
$(OUTDIR)\edit.obj \
|
$(OUTDIR)\edit.obj \
|
||||||
$(OUTDIR)\eval.obj \
|
$(OUTDIR)\eval.obj \
|
||||||
|
$(OUTDIR)\evalfunc.obj \
|
||||||
$(OUTDIR)\ex_cmds.obj \
|
$(OUTDIR)\ex_cmds.obj \
|
||||||
$(OUTDIR)\ex_cmds2.obj \
|
$(OUTDIR)\ex_cmds2.obj \
|
||||||
$(OUTDIR)\ex_docmd.obj \
|
$(OUTDIR)\ex_docmd.obj \
|
||||||
@@ -1175,6 +1176,8 @@ $(OUTDIR)/edit.obj: $(OUTDIR) edit.c $(INCL)
|
|||||||
|
|
||||||
$(OUTDIR)/eval.obj: $(OUTDIR) eval.c $(INCL)
|
$(OUTDIR)/eval.obj: $(OUTDIR) eval.c $(INCL)
|
||||||
|
|
||||||
|
$(OUTDIR)/evalfunc.obj: $(OUTDIR) evalfunc.c $(INCL)
|
||||||
|
|
||||||
$(OUTDIR)/ex_cmds.obj: $(OUTDIR) ex_cmds.c $(INCL)
|
$(OUTDIR)/ex_cmds.obj: $(OUTDIR) ex_cmds.c $(INCL)
|
||||||
|
|
||||||
$(OUTDIR)/ex_cmds2.obj: $(OUTDIR) ex_cmds2.c $(INCL)
|
$(OUTDIR)/ex_cmds2.obj: $(OUTDIR) ex_cmds2.c $(INCL)
|
||||||
@@ -1372,6 +1375,7 @@ proto.h: \
|
|||||||
proto/digraph.pro \
|
proto/digraph.pro \
|
||||||
proto/edit.pro \
|
proto/edit.pro \
|
||||||
proto/eval.pro \
|
proto/eval.pro \
|
||||||
|
proto/evalfunc.pro \
|
||||||
proto/ex_cmds.pro \
|
proto/ex_cmds.pro \
|
||||||
proto/ex_cmds2.pro \
|
proto/ex_cmds2.pro \
|
||||||
proto/ex_docmd.pro \
|
proto/ex_docmd.pro \
|
||||||
|
@@ -100,6 +100,7 @@ SRC = \
|
|||||||
digraph.c \
|
digraph.c \
|
||||||
edit.c \
|
edit.c \
|
||||||
eval.c \
|
eval.c \
|
||||||
|
evalfunc.c \
|
||||||
ex_cmds.c \
|
ex_cmds.c \
|
||||||
ex_cmds2.c \
|
ex_cmds2.c \
|
||||||
ex_docmd.c \
|
ex_docmd.c \
|
||||||
@@ -155,6 +156,7 @@ OBJ = \
|
|||||||
digraph.o \
|
digraph.o \
|
||||||
edit.o \
|
edit.o \
|
||||||
eval.o \
|
eval.o \
|
||||||
|
evalfunc.o \
|
||||||
ex_cmds.o \
|
ex_cmds.o \
|
||||||
ex_cmds2.o \
|
ex_cmds2.o \
|
||||||
ex_docmd.o \
|
ex_docmd.o \
|
||||||
@@ -210,6 +212,7 @@ PRO = \
|
|||||||
proto/digraph.pro \
|
proto/digraph.pro \
|
||||||
proto/edit.pro \
|
proto/edit.pro \
|
||||||
proto/eval.pro \
|
proto/eval.pro \
|
||||||
|
proto/evalfunc.pro \
|
||||||
proto/ex_cmds.pro \
|
proto/ex_cmds.pro \
|
||||||
proto/ex_cmds2.pro \
|
proto/ex_cmds2.pro \
|
||||||
proto/ex_docmd.pro \
|
proto/ex_docmd.pro \
|
||||||
@@ -330,6 +333,8 @@ edit.o: edit.c
|
|||||||
proto/edit.pro: edit.c
|
proto/edit.pro: edit.c
|
||||||
eval.o: eval.c
|
eval.o: eval.c
|
||||||
proto/eval.pro: eval.c
|
proto/eval.pro: eval.c
|
||||||
|
evalfunc.o: evalfunc.c
|
||||||
|
proto/evalfunc.pro: evalfunc.c
|
||||||
ex_cmds.o: ex_cmds.c
|
ex_cmds.o: ex_cmds.c
|
||||||
proto/ex_cmds.pro: ex_cmds.c
|
proto/ex_cmds.pro: ex_cmds.c
|
||||||
ex_cmds2.o: ex_cmds2.c
|
ex_cmds2.o: ex_cmds2.c
|
||||||
|
10
src/Makefile
10
src/Makefile
@@ -1489,6 +1489,7 @@ BASIC_SRC = \
|
|||||||
digraph.c \
|
digraph.c \
|
||||||
edit.c \
|
edit.c \
|
||||||
eval.c \
|
eval.c \
|
||||||
|
evalfunc.c \
|
||||||
ex_cmds.c \
|
ex_cmds.c \
|
||||||
ex_cmds2.c \
|
ex_cmds2.c \
|
||||||
ex_docmd.c \
|
ex_docmd.c \
|
||||||
@@ -1593,6 +1594,7 @@ OBJ_COMMON = \
|
|||||||
objects/digraph.o \
|
objects/digraph.o \
|
||||||
objects/edit.o \
|
objects/edit.o \
|
||||||
objects/eval.o \
|
objects/eval.o \
|
||||||
|
objects/evalfunc.o \
|
||||||
objects/ex_cmds.o \
|
objects/ex_cmds.o \
|
||||||
objects/ex_cmds2.o \
|
objects/ex_cmds2.o \
|
||||||
objects/ex_docmd.o \
|
objects/ex_docmd.o \
|
||||||
@@ -1683,6 +1685,7 @@ PRO_AUTO = \
|
|||||||
digraph.pro \
|
digraph.pro \
|
||||||
edit.pro \
|
edit.pro \
|
||||||
eval.pro \
|
eval.pro \
|
||||||
|
evalfunc.pro \
|
||||||
ex_cmds.pro \
|
ex_cmds.pro \
|
||||||
ex_cmds2.pro \
|
ex_cmds2.pro \
|
||||||
ex_docmd.pro \
|
ex_docmd.pro \
|
||||||
@@ -2830,6 +2833,9 @@ objects/edit.o: edit.c
|
|||||||
objects/eval.o: eval.c
|
objects/eval.o: eval.c
|
||||||
$(CCC) -o $@ eval.c
|
$(CCC) -o $@ eval.c
|
||||||
|
|
||||||
|
objects/evalfunc.o: evalfunc.c
|
||||||
|
$(CCC) -o $@ evalfunc.c
|
||||||
|
|
||||||
objects/ex_cmds.o: ex_cmds.c
|
objects/ex_cmds.o: ex_cmds.c
|
||||||
$(CCC) -o $@ ex_cmds.c
|
$(CCC) -o $@ ex_cmds.c
|
||||||
|
|
||||||
@@ -3220,6 +3226,10 @@ objects/eval.o: eval.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
|
|||||||
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
|
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
|
||||||
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
|
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
|
||||||
farsi.h arabic.h version.h
|
farsi.h arabic.h version.h
|
||||||
|
objects/evalfunc.o: evalfunc.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
|
||||||
|
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
|
||||||
|
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
|
||||||
|
farsi.h arabic.h version.h
|
||||||
objects/ex_cmds.o: ex_cmds.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
|
objects/ex_cmds.o: ex_cmds.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
|
||||||
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
|
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
|
||||||
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
|
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
|
||||||
|
14145
src/eval.c
14145
src/eval.c
File diff suppressed because it is too large
Load Diff
12552
src/evalfunc.c
Normal file
12552
src/evalfunc.c
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1538,6 +1538,8 @@ EXTERN char_u e_dictreq[] INIT(= N_("E715: Dictionary required"));
|
|||||||
EXTERN char_u e_listidx[] INIT(= N_("E684: list index out of range: %ld"));
|
EXTERN char_u e_listidx[] INIT(= N_("E684: list index out of range: %ld"));
|
||||||
EXTERN char_u e_toomanyarg[] INIT(= N_("E118: Too many arguments for function: %s"));
|
EXTERN char_u e_toomanyarg[] INIT(= N_("E118: Too many arguments for function: %s"));
|
||||||
EXTERN char_u e_dictkey[] INIT(= N_("E716: Key not present in Dictionary: %s"));
|
EXTERN char_u e_dictkey[] INIT(= N_("E716: Key not present in Dictionary: %s"));
|
||||||
|
EXTERN char_u e_listreq[] INIT(= N_("E714: List required"));
|
||||||
|
EXTERN char_u e_listdictarg[] INIT(= N_("E712: Argument of %s must be a List or Dictionary"));
|
||||||
#endif
|
#endif
|
||||||
#ifdef FEAT_QUICKFIX
|
#ifdef FEAT_QUICKFIX
|
||||||
EXTERN char_u e_readerrf[] INIT(= N_("E47: Error while reading errorfile"));
|
EXTERN char_u e_readerrf[] INIT(= N_("E47: Error while reading errorfile"));
|
||||||
|
42
src/list.c
42
src/list.c
@@ -884,4 +884,44 @@ failret:
|
|||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* defined(FEAT_MODIFY_FNAME) || defined(FEAT_EVAL) */
|
/*
|
||||||
|
* Write list of strings to file
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
write_list(FILE *fd, list_T *list, int binary)
|
||||||
|
{
|
||||||
|
listitem_T *li;
|
||||||
|
int c;
|
||||||
|
int ret = OK;
|
||||||
|
char_u *s;
|
||||||
|
|
||||||
|
for (li = list->lv_first; li != NULL; li = li->li_next)
|
||||||
|
{
|
||||||
|
for (s = get_tv_string(&li->li_tv); *s != NUL; ++s)
|
||||||
|
{
|
||||||
|
if (*s == '\n')
|
||||||
|
c = putc(NUL, fd);
|
||||||
|
else
|
||||||
|
c = putc(*s, fd);
|
||||||
|
if (c == EOF)
|
||||||
|
{
|
||||||
|
ret = FAIL;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!binary || li->li_next != NULL)
|
||||||
|
if (putc('\n', fd) == EOF)
|
||||||
|
{
|
||||||
|
ret = FAIL;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (ret == FAIL)
|
||||||
|
{
|
||||||
|
EMSG(_(e_write));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* defined(FEAT_EVAL) */
|
||||||
|
@@ -72,6 +72,7 @@ extern int _stricoll(char *a, char *b);
|
|||||||
# include "digraph.pro"
|
# include "digraph.pro"
|
||||||
# include "edit.pro"
|
# include "edit.pro"
|
||||||
# include "eval.pro"
|
# include "eval.pro"
|
||||||
|
# include "evalfunc.pro"
|
||||||
# include "ex_cmds.pro"
|
# include "ex_cmds.pro"
|
||||||
# include "ex_cmds2.pro"
|
# include "ex_cmds2.pro"
|
||||||
# include "ex_docmd.pro"
|
# include "ex_docmd.pro"
|
||||||
|
@@ -25,6 +25,7 @@ void *call_func_retlist(char_u *func, int argc, char_u **argv, int safe);
|
|||||||
int eval_foldexpr(char_u *arg, int *cp);
|
int eval_foldexpr(char_u *arg, int *cp);
|
||||||
void ex_let(exarg_T *eap);
|
void ex_let(exarg_T *eap);
|
||||||
void list_hashtable_vars(hashtab_T *ht, char_u *prefix, int empty, int *first);
|
void list_hashtable_vars(hashtab_T *ht, char_u *prefix, int empty, int *first);
|
||||||
|
int check_changedtick(char_u *arg);
|
||||||
char_u *get_lval(char_u *name, typval_T *rettv, lval_T *lp, int unlet, int skip, int flags, int fne_flags);
|
char_u *get_lval(char_u *name, typval_T *rettv, lval_T *lp, int unlet, int skip, int flags, int fne_flags);
|
||||||
void clear_lval(lval_T *lp);
|
void clear_lval(lval_T *lp);
|
||||||
void *eval_for_line(char_u *arg, int *errp, char_u **nextcmdp, int skip);
|
void *eval_for_line(char_u *arg, int *errp, char_u **nextcmdp, int skip);
|
||||||
@@ -38,6 +39,7 @@ void del_menutrans_vars(void);
|
|||||||
char_u *get_user_var_name(expand_T *xp, int idx);
|
char_u *get_user_var_name(expand_T *xp, int idx);
|
||||||
int eval0(char_u *arg, typval_T *rettv, char_u **nextcmd, int evaluate);
|
int eval0(char_u *arg, typval_T *rettv, char_u **nextcmd, int evaluate);
|
||||||
int eval1(char_u **arg, typval_T *rettv, int evaluate);
|
int eval1(char_u **arg, typval_T *rettv, int evaluate);
|
||||||
|
int get_option_tv(char_u **arg, typval_T *rettv, int evaluate);
|
||||||
void partial_unref(partial_T *pt);
|
void partial_unref(partial_T *pt);
|
||||||
int tv_equal(typval_T *tv1, typval_T *tv2, int ic, int recursive);
|
int tv_equal(typval_T *tv1, typval_T *tv2, int ic, int recursive);
|
||||||
int get_copyID(void);
|
int get_copyID(void);
|
||||||
@@ -50,18 +52,10 @@ char_u *echo_string(typval_T *tv, char_u **tofree, char_u *numbuf, int copyID);
|
|||||||
char_u *tv2string(typval_T *tv, char_u **tofree, char_u *numbuf, int copyID);
|
char_u *tv2string(typval_T *tv, char_u **tofree, char_u *numbuf, int copyID);
|
||||||
char_u *string_quote(char_u *str, int function);
|
char_u *string_quote(char_u *str, int function);
|
||||||
int string2float(char_u *text, float_T *value);
|
int string2float(char_u *text, float_T *value);
|
||||||
char_u *get_function_name(expand_T *xp, int idx);
|
pos_T *var2fpos(typval_T *varp, int dollar_lnum, int *fnum);
|
||||||
char_u *get_expr_name(expand_T *xp, int idx);
|
int list2fpos(typval_T *arg, pos_T *posp, int *fnump, colnr_T *curswantp);
|
||||||
int find_internal_func(char_u *name);
|
|
||||||
int call_internal_func(char_u *name, int argcount, typval_T *argvars, typval_T *rettv);
|
|
||||||
buf_T *buflist_find_by_name(char_u *name, int curtab_only);
|
|
||||||
void execute_redir_str(char_u *value, int value_len);
|
|
||||||
void mzscheme_call_vim(char_u *name, typval_T *args, typval_T *rettv);
|
|
||||||
float_T vim_round(float_T f);
|
|
||||||
long do_searchpair(char_u *spat, char_u *mpat, char_u *epat, int dir, char_u *skip, int flags, pos_T *match_pos, linenr_T lnum_stop, long time_limit);
|
|
||||||
char_u *get_callback(typval_T *arg, partial_T **pp);
|
|
||||||
void free_callback(char_u *callback, partial_T *partial);
|
|
||||||
int get_id_len(char_u **arg);
|
int get_id_len(char_u **arg);
|
||||||
|
int get_name_len(char_u **arg, char_u **alias, int evaluate, int verbose);
|
||||||
char_u *find_name_end(char_u *arg, char_u **expr_start, char_u **expr_end, int flags);
|
char_u *find_name_end(char_u *arg, char_u **expr_start, char_u **expr_end, int flags);
|
||||||
int eval_isnamec(int c);
|
int eval_isnamec(int c);
|
||||||
int eval_isnamec1(int c);
|
int eval_isnamec1(int c);
|
||||||
@@ -78,32 +72,43 @@ void set_reg_var(int c);
|
|||||||
char_u *v_exception(char_u *oldval);
|
char_u *v_exception(char_u *oldval);
|
||||||
char_u *v_throwpoint(char_u *oldval);
|
char_u *v_throwpoint(char_u *oldval);
|
||||||
char_u *set_cmdarg(exarg_T *eap, char_u *oldarg);
|
char_u *set_cmdarg(exarg_T *eap, char_u *oldarg);
|
||||||
|
int get_var_tv(char_u *name, int len, typval_T *rettv, dictitem_T **dip, int verbose, int no_autoload);
|
||||||
int handle_subscript(char_u **arg, typval_T *rettv, int evaluate, int verbose);
|
int handle_subscript(char_u **arg, typval_T *rettv, int evaluate, int verbose);
|
||||||
typval_T *alloc_tv(void);
|
typval_T *alloc_tv(void);
|
||||||
void free_tv(typval_T *varp);
|
void free_tv(typval_T *varp);
|
||||||
void clear_tv(typval_T *varp);
|
void clear_tv(typval_T *varp);
|
||||||
|
void init_tv(typval_T *varp);
|
||||||
varnumber_T get_tv_number(typval_T *varp);
|
varnumber_T get_tv_number(typval_T *varp);
|
||||||
varnumber_T get_tv_number_chk(typval_T *varp, int *denote);
|
varnumber_T get_tv_number_chk(typval_T *varp, int *denote);
|
||||||
|
float_T get_tv_float(typval_T *varp);
|
||||||
char_u *get_tv_string(typval_T *varp);
|
char_u *get_tv_string(typval_T *varp);
|
||||||
char_u *get_tv_string_buf(typval_T *varp, char_u *buf);
|
char_u *get_tv_string_buf(typval_T *varp, char_u *buf);
|
||||||
char_u *get_tv_string_chk(typval_T *varp);
|
char_u *get_tv_string_chk(typval_T *varp);
|
||||||
char_u *get_tv_string_buf_chk(typval_T *varp, char_u *buf);
|
char_u *get_tv_string_buf_chk(typval_T *varp, char_u *buf);
|
||||||
dictitem_T *find_var(char_u *name, hashtab_T **htp, int no_autoload);
|
dictitem_T *find_var(char_u *name, hashtab_T **htp, int no_autoload);
|
||||||
|
dictitem_T *find_var_in_ht(hashtab_T *ht, int htname, char_u *varname, int no_autoload);
|
||||||
char_u *get_var_value(char_u *name);
|
char_u *get_var_value(char_u *name);
|
||||||
void new_script_vars(scid_T id);
|
void new_script_vars(scid_T id);
|
||||||
void init_var_dict(dict_T *dict, dictitem_T *dict_var, int scope);
|
void init_var_dict(dict_T *dict, dictitem_T *dict_var, int scope);
|
||||||
void unref_var_dict(dict_T *dict);
|
void unref_var_dict(dict_T *dict);
|
||||||
void vars_clear(hashtab_T *ht);
|
void vars_clear(hashtab_T *ht);
|
||||||
void vars_clear_ext(hashtab_T *ht, int free_val);
|
void vars_clear_ext(hashtab_T *ht, int free_val);
|
||||||
|
void set_var(char_u *name, typval_T *tv, int copy);
|
||||||
int var_check_ro(int flags, char_u *name, int use_gettext);
|
int var_check_ro(int flags, char_u *name, int use_gettext);
|
||||||
|
int var_check_fixed(int flags, char_u *name, int use_gettext);
|
||||||
int var_check_func_name(char_u *name, int new_var);
|
int var_check_func_name(char_u *name, int new_var);
|
||||||
int valid_varname(char_u *varname);
|
int valid_varname(char_u *varname);
|
||||||
int tv_check_lock(int lock, char_u *name, int use_gettext);
|
int tv_check_lock(int lock, char_u *name, int use_gettext);
|
||||||
void copy_tv(typval_T *from, typval_T *to);
|
void copy_tv(typval_T *from, typval_T *to);
|
||||||
int item_copy(typval_T *from, typval_T *to, int deep, int copyID);
|
int item_copy(typval_T *from, typval_T *to, int deep, int copyID);
|
||||||
|
void get_user_input(typval_T *argvars, typval_T *rettv, int inputdialog, int secret);
|
||||||
void ex_echo(exarg_T *eap);
|
void ex_echo(exarg_T *eap);
|
||||||
void ex_echohl(exarg_T *eap);
|
void ex_echohl(exarg_T *eap);
|
||||||
void ex_execute(exarg_T *eap);
|
void ex_execute(exarg_T *eap);
|
||||||
|
win_T *find_win_by_nr(typval_T *vp, tabpage_T *tp);
|
||||||
|
win_T *find_tabwin(typval_T *wvp, typval_T *tvp);
|
||||||
|
void getwinvar(typval_T *argvars, typval_T *rettv, int off);
|
||||||
|
void setwinvar(typval_T *argvars, typval_T *rettv, int off);
|
||||||
char_u *autoload_name(char_u *name);
|
char_u *autoload_name(char_u *name);
|
||||||
int script_autoload(char_u *name, int reload);
|
int script_autoload(char_u *name, int reload);
|
||||||
int read_viminfo_varlist(vir_T *virp, int writing);
|
int read_viminfo_varlist(vir_T *virp, int writing);
|
||||||
@@ -112,6 +117,15 @@ int store_session_globals(FILE *fd);
|
|||||||
void last_set_msg(scid_T scriptID);
|
void last_set_msg(scid_T scriptID);
|
||||||
void ex_oldfiles(exarg_T *eap);
|
void ex_oldfiles(exarg_T *eap);
|
||||||
void reset_v_option_vars(void);
|
void reset_v_option_vars(void);
|
||||||
|
void prepare_assert_error(garray_T *gap);
|
||||||
|
void assert_error(garray_T *gap);
|
||||||
|
void assert_equal_common(typval_T *argvars, assert_type_T atype);
|
||||||
|
void assert_match_common(typval_T *argvars, assert_type_T atype);
|
||||||
|
void assert_bool(typval_T *argvars, int isTrue);
|
||||||
|
void assert_exception(typval_T *argvars);
|
||||||
|
void assert_fails(typval_T *argvars);
|
||||||
|
void fill_assert_error(garray_T *gap, typval_T *opt_msg_tv, char_u *exp_str, typval_T *exp_tv, typval_T *got_tv, assert_type_T atype);
|
||||||
int modify_fname(char_u *src, int *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen);
|
int modify_fname(char_u *src, int *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen);
|
||||||
char_u *do_string_sub(char_u *str, char_u *pat, char_u *sub, char_u *flags);
|
char_u *do_string_sub(char_u *str, char_u *pat, char_u *sub, char_u *flags);
|
||||||
|
void filter_map(typval_T *argvars, typval_T *rettv, int map);
|
||||||
/* vim: set ft=c : */
|
/* vim: set ft=c : */
|
||||||
|
13
src/proto/evalfunc.pro
Normal file
13
src/proto/evalfunc.pro
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
/* evalfunc.c */
|
||||||
|
char_u *get_function_name(expand_T *xp, int idx);
|
||||||
|
char_u *get_expr_name(expand_T *xp, int idx);
|
||||||
|
int find_internal_func(char_u *name);
|
||||||
|
int call_internal_func(char_u *name, int argcount, typval_T *argvars, typval_T *rettv);
|
||||||
|
buf_T *buflist_find_by_name(char_u *name, int curtab_only);
|
||||||
|
void execute_redir_str(char_u *value, int value_len);
|
||||||
|
void mzscheme_call_vim(char_u *name, typval_T *args, typval_T *rettv);
|
||||||
|
float_T vim_round(float_T f);
|
||||||
|
long do_searchpair(char_u *spat, char_u *mpat, char_u *epat, int dir, char_u *skip, int flags, pos_T *match_pos, linenr_T lnum_stop, long time_limit);
|
||||||
|
char_u *get_callback(typval_T *arg, partial_T **pp);
|
||||||
|
void free_callback(char_u *callback, partial_T *partial);
|
||||||
|
/* vim: set ft=c : */
|
@@ -31,4 +31,5 @@ void vimlist_remove(list_T *l, listitem_T *item, listitem_T *item2);
|
|||||||
char_u *list2string(typval_T *tv, int copyID, int restore_copyID);
|
char_u *list2string(typval_T *tv, int copyID, int restore_copyID);
|
||||||
int list_join(garray_T *gap, list_T *l, char_u *sep, int echo_style, int restore_copyID, int copyID);
|
int list_join(garray_T *gap, list_T *l, char_u *sep, int echo_style, int restore_copyID, int copyID);
|
||||||
int get_list_tv(char_u **arg, typval_T *rettv, int evaluate);
|
int get_list_tv(char_u **arg, typval_T *rettv, int evaluate);
|
||||||
|
int write_list(FILE *fd, list_T *list, int binary);
|
||||||
/* vim: set ft=c : */
|
/* vim: set ft=c : */
|
||||||
|
@@ -758,6 +758,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
2063,
|
||||||
/**/
|
/**/
|
||||||
2062,
|
2062,
|
||||||
/**/
|
/**/
|
||||||
|
@@ -2051,6 +2051,15 @@ typedef struct _stat64 stat_T;
|
|||||||
typedef struct stat stat_T;
|
typedef struct stat stat_T;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
ASSERT_EQUAL,
|
||||||
|
ASSERT_NOTEQUAL,
|
||||||
|
ASSERT_MATCH,
|
||||||
|
ASSERT_NOTMATCH,
|
||||||
|
ASSERT_OTHER
|
||||||
|
} assert_type_T;
|
||||||
|
|
||||||
#include "ex_cmds.h" /* Ex command defines */
|
#include "ex_cmds.h" /* Ex command defines */
|
||||||
#include "proto.h" /* function prototypes */
|
#include "proto.h" /* function prototypes */
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user