Mercurial > vim
diff src/proto/list.pro @ 19181:94eda51ba9ba v8.2.0149
patch 8.2.0149: maintaining a Vim9 branch separately is more work
Commit: https://github.com/vim/vim/commit/8a7d6542b33e5d2b352262305c3bfdb2d14e1cf8
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jan 26 15:56:19 2020 +0100
patch 8.2.0149: maintaining a Vim9 branch separately is more work
Problem: Maintaining a Vim9 branch separately is more work.
Solution: Merge the Vim9 script changes.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 26 Jan 2020 16:00:05 +0100 |
parents | 684a15da9929 |
children | dcec86d796bc |
line wrap: on
line diff
--- a/src/proto/list.pro +++ b/src/proto/list.pro @@ -3,6 +3,8 @@ void list_add_watch(list_T *l, listwatch void list_rem_watch(list_T *l, listwatch_T *lwrem); list_T *list_alloc(void); list_T *list_alloc_id(alloc_id_T id); +list_T *list_alloc_with_items(int count); +void list_set_item(list_T *l, int idx, typval_T *tv); int rettv_list_alloc(typval_T *rettv); int rettv_list_alloc_id(typval_T *rettv, alloc_id_T id); void rettv_list_set(typval_T *rettv, list_T *l); @@ -11,7 +13,8 @@ int list_free_nonref(int copyID); void list_free_items(int copyID); void list_free(list_T *l); listitem_T *listitem_alloc(void); -void listitem_free(listitem_T *item); +void list_free_item(list_T *l, listitem_T *item); +void listitem_free(list_T *l, listitem_T *item); void listitem_remove(list_T *l, listitem_T *item); long list_len(list_T *l); int list_equal(list_T *l1, list_T *l2, int ic, int recursive); @@ -21,6 +24,7 @@ char_u *list_find_str(list_T *l, long id long list_idx_of_item(list_T *l, listitem_T *item); void list_append(list_T *l, listitem_T *item); int list_append_tv(list_T *l, typval_T *tv); +int list_append_tv_move(list_T *l, typval_T *tv); int list_append_dict(list_T *list, dict_T *dict); int list_append_list(list_T *list1, list_T *list2); int list_append_string(list_T *l, char_u *str, int len); @@ -34,7 +38,7 @@ void vimlist_remove(list_T *l, listitem_ 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 get_list_tv(char_u **arg, typval_T *rettv, int evaluate, int do_error); 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);