aboutsummaryrefslogtreecommitdiff
path: root/runtime/autoload/provider.vim
blob: a4d5241b571b1a3dd35e1cfe07786ae233223f4d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
" Common functionality for providers

let s:stderr = {}

function! provider#stderr_collector(chan_id, data, event) dict
   let stderr = get(s:stderr, a:chan_id, [''])
   let stderr[-1] .= a:data[0]
   call extend(stderr, a:data[1:])
   let s:stderr[a:chan_id] = stderr
endfunction

function! provider#clear_stderr(chan_id)
   silent! call delete(s:stderr, a:chan_id)
endfunction

function! provider#get_stderr(chan_id)
   return get(s:stderr, a:chan_id, [])
endfunction