patch 8.1.1763: evalfunc.c is still too big
Problem: Evalfunc.c is still too big.
Solution: Move dict and list functions to a better place.
diff --git a/src/proto/blob.pro b/src/proto/blob.pro
index 019692d..706a83e 100644
--- a/src/proto/blob.pro
+++ b/src/proto/blob.pro
@@ -13,4 +13,5 @@
int write_blob(FILE *fd, blob_T *blob);
char_u *blob2string(blob_T *blob, char_u **tofree, char_u *numbuf);
blob_T *string2blob(char_u *str);
+void blob_remove(typval_T *argvars, typval_T *rettv);
/* vim: set ft=c : */
diff --git a/src/proto/dict.pro b/src/proto/dict.pro
index c133523..93d61e7 100644
--- a/src/proto/dict.pro
+++ b/src/proto/dict.pro
@@ -33,5 +33,10 @@
dictitem_T *dict_lookup(hashitem_T *hi);
int dict_equal(dict_T *d1, dict_T *d2, int ic, int recursive);
void dict_list(typval_T *argvars, typval_T *rettv, int what);
+void f_items(typval_T *argvars, typval_T *rettv);
+void f_keys(typval_T *argvars, typval_T *rettv);
+void f_values(typval_T *argvars, typval_T *rettv);
void dict_set_items_ro(dict_T *di);
+void f_has_key(typval_T *argvars, typval_T *rettv);
+void dict_remove(typval_T *argvars, typval_T *rettv, char_u *arg_errmsg);
/* vim: set ft=c : */
diff --git a/src/proto/list.pro b/src/proto/list.pro
index 88d9028..2f5be0d 100644
--- a/src/proto/list.pro
+++ b/src/proto/list.pro
@@ -34,7 +34,12 @@
void vimlist_remove(list_T *l, listitem_T *item, listitem_T *item2);
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);
+void f_join(typval_T *argvars, typval_T *rettv);
int get_list_tv(char_u **arg, typval_T *rettv, int evaluate);
int write_list(FILE *fd, list_T *list, int binary);
void init_static_list(staticList10_T *sl);
+void f_list2str(typval_T *argvars, typval_T *rettv);
+void list_remove(typval_T *argvars, typval_T *rettv, char_u *arg_errmsg);
+void f_sort(typval_T *argvars, typval_T *rettv);
+void f_uniq(typval_T *argvars, typval_T *rettv);
/* vim: set ft=c : */