File tree Expand file tree Collapse file tree 3 files changed +24
-0
lines changed Expand file tree Collapse file tree 3 files changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -40,6 +40,25 @@ function! s:async_remark() abort dict
4040endfunction
4141let s: async .remark = funcref (' s:async_remark' )
4242
43+ function ! s: async_get_child_nodes (key ) abort dict
44+ let helper = self .helper
45+ let fern = helper.fern
46+ let node = fern#internal#node#find (a: key , fern.nodes)
47+ if empty (node)
48+ return s: Promise .reject (printf (' failed to find a node %s' , a: key ))
49+ endif
50+ let Profile = fern#profile#start (' fern#helper:helper.async.get_child_nodes' )
51+ return s: Promise .resolve ()
52+ \. then ({ - > fern#internal#node#children (
53+ \ node,
54+ \ fern.provider,
55+ \ fern.source .token,
56+ \ )
57+ \} )
58+ \. finally ({ - > Profile () })
59+ endfunction
60+ let s: async .get_child_nodes = funcref (' s:async_get_child_nodes' )
61+
4362function ! s: async_set_mark (key , value) abort dict
4463 let helper = self .helper
4564 let fern = helper.fern
Original file line number Diff line number Diff line change @@ -445,6 +445,10 @@ Following methods are executed asynchronously and return a promise.
445445.async.remark()
446446 Return a promise to remark the content.
447447
448+ *fern-develop-helper.async.get_child_nodes()*
449+ .async.get_child_nodes({key} )
450+ Return a promise which will resolves to child nodes of the {key} node.
451+
448452 *fern-develop-helper.async.set_mark()*
449453.async.set_mark({key} , {value} )
450454 Return a promise to set mark to a node identified by the {key} .
Original file line number Diff line number Diff line change @@ -38,6 +38,7 @@ Describe fern#helper
3838 \ 'sleep',
3939 \ 'redraw',
4040 \ 'remark',
41+ \ 'get_child_nodes',
4142 \ 'set_mark',
4243 \ 'set_hidden',
4344 \ 'set_include',
You can’t perform that action at this time.
0 commit comments