annotate src/proto/dict.pro @ 13074:66c014c71dad v8.0.1412

patch 8.0.1412: using free memory using setloclist() commit https://github.com/vim/vim/commit/12237448499aaeb8c4f2be7a1deda60c0f160627 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Dec 19 12:38:52 2017 +0100 patch 8.0.1412: using free memory using setloclist() Problem: Using free memory using setloclist(). (Dominique Pelle) Solution: Mark location list context as still in use when needed. (Yegappan Lakshmanan, closes #2462)
author Christian Brabandt <cb@256bit.org>
date Tue, 19 Dec 2017 12:45:06 +0100
parents 6e81a68d63a1
children 3c80092eb211
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9556
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1 /* dict.c */
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2 dict_T *dict_alloc(void);
13037
6e81a68d63a1 patch 8.0.1394: cannot intercept a yank command
Christian Brabandt <cb@256bit.org>
parents: 11418
diff changeset
3 dict_T *dict_alloc_lock(int lock);
9556
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
4 int rettv_dict_alloc(typval_T *rettv);
11418
162bcd0debd7 patch 8.0.0593: duplication of code for adding a list or dict return value
Christian Brabandt <cb@256bit.org>
parents: 9858
diff changeset
5 void rettv_dict_set(typval_T *rettv, dict_T *d);
13037
6e81a68d63a1 patch 8.0.1394: cannot intercept a yank command
Christian Brabandt <cb@256bit.org>
parents: 11418
diff changeset
6 void dict_free_contents(dict_T *d);
9556
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
7 void dict_unref(dict_T *d);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
8 int dict_free_nonref(int copyID);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
9 void dict_free_items(int copyID);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
10 dictitem_T *dictitem_alloc(char_u *key);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
11 void dictitem_remove(dict_T *dict, dictitem_T *item);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
12 void dictitem_free(dictitem_T *item);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
13 dict_T *dict_copy(dict_T *orig, int deep, int copyID);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
14 int dict_add(dict_T *d, dictitem_T *item);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
15 int dict_add_nr_str(dict_T *d, char *key, varnumber_T nr, char_u *str);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
16 int dict_add_list(dict_T *d, char *key, list_T *list);
9858
3e96d9ed2ca1 commit https://github.com/vim/vim/commit/b5ae48e9ffd3b8eb6ca4057de11f1bddcde8ce6f
Christian Brabandt <cb@256bit.org>
parents: 9556
diff changeset
17 int dict_add_dict(dict_T *d, char *key, dict_T *dict);
9556
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
18 long dict_len(dict_T *d);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
19 dictitem_T *dict_find(dict_T *d, char_u *key, int len);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
20 char_u *get_dict_string(dict_T *d, char_u *key, int save);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
21 varnumber_T get_dict_number(dict_T *d, char_u *key);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
22 char_u *dict2string(typval_T *tv, int copyID, int restore_copyID);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
23 int get_dict_tv(char_u **arg, typval_T *rettv, int evaluate);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
24 void dict_extend(dict_T *d1, dict_T *d2, char_u *action);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
25 dictitem_T *dict_lookup(hashitem_T *hi);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
26 int dict_equal(dict_T *d1, dict_T *d2, int ic, int recursive);
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
27 void dict_list(typval_T *argvars, typval_T *rettv, int what);
13037
6e81a68d63a1 patch 8.0.1394: cannot intercept a yank command
Christian Brabandt <cb@256bit.org>
parents: 11418
diff changeset
28 void dict_set_items_ro(dict_T *di);
9556
afaff1d283d3 commit https://github.com/vim/vim/commit/cd52459c387785796713826c63174cdeed295dd4
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
29 /* vim: set ft=c : */