32 lines
632 B
VimL
32 lines
632 B
VimL
scriptencoding utf-8
|
|
|
|
function! coc#dict#equal(one, two) abort
|
|
for key in keys(a:one)
|
|
if a:one[key] != a:two[key]
|
|
return 0
|
|
endif
|
|
endfor
|
|
return 1
|
|
endfunction
|
|
|
|
" Return new dict with keys removed
|
|
function! coc#dict#omit(dict, keys) abort
|
|
let res = {}
|
|
for key in keys(a:dict)
|
|
if index(a:keys, key) == -1
|
|
let res[key] = a:dict[key]
|
|
endif
|
|
endfor
|
|
return res
|
|
endfunction
|
|
|
|
" Return new dict with keys only
|
|
function! coc#dict#pick(dict, keys) abort
|
|
let res = {}
|
|
for key in keys(a:dict)
|
|
if index(a:keys, key) != -1
|
|
let res[key] = a:dict[key]
|
|
endif
|
|
endfor
|
|
return res
|
|
endfunction
|