|
| 1 | +local validator = require('orgmode.utils.validator') |
1 | 2 | ---@diagnostic disable: undefined-field
|
2 | 3 | -- Taken from https://github.com/notomo/promise.nvim
|
3 | 4 |
|
@@ -45,7 +46,7 @@ local new_empty_userdata = function()
|
45 | 46 | end
|
46 | 47 |
|
47 | 48 | local new_pending = function(on_fullfilled, on_rejected)
|
48 |
| - vim.validate({ |
| 49 | + validator.validate({ |
49 | 50 | on_fullfilled = { on_fullfilled, 'function', true },
|
50 | 51 | on_rejected = { on_rejected, 'function', true },
|
51 | 52 | })
|
|
79 | 80 | --- @param executor fun(resolve:fun(...:any),reject:fun(...:any))
|
80 | 81 | --- @return OrgPromise
|
81 | 82 | function Promise.new(executor)
|
82 |
| - vim.validate({ executor = { executor, 'function' } }) |
| 83 | + validator.validate({ executor = { executor, 'function' } }) |
83 | 84 |
|
84 | 85 | local self = new_pending()
|
85 | 86 |
|
|
219 | 220 | --- @param on_rejected (fun(...:any):any)?: A callback on rejected.
|
220 | 221 | --- @return OrgPromise
|
221 | 222 | function Promise.next(self, on_fullfilled, on_rejected)
|
222 |
| - vim.validate({ |
| 223 | + validator.validate({ |
223 | 224 | on_fullfilled = { on_fullfilled, 'function', true },
|
224 | 225 | on_rejected = { on_rejected, 'function', true },
|
225 | 226 | })
|
|
247 | 248 | --- @param on_finally fun()
|
248 | 249 | --- @return OrgPromise
|
249 | 250 | function Promise.finally(self, on_finally)
|
250 |
| - vim.validate({ on_finally = { on_finally, 'function', true } }) |
| 251 | + validator.validate({ on_finally = { on_finally, 'function', true } }) |
251 | 252 | return self
|
252 | 253 | :next(function(...)
|
253 | 254 | on_finally()
|
|
307 | 308 | --- @param list any[]: promise or non-promise values
|
308 | 309 | --- @return OrgPromise
|
309 | 310 | function Promise.all(list)
|
310 |
| - vim.validate({ list = { list, 'table' } }) |
| 311 | + validator.validate({ list = { list, 'table' } }) |
311 | 312 | return Promise.new(function(resolve, reject)
|
312 | 313 | local remain = #list
|
313 | 314 | if remain == 0 then
|
|
338 | 339 | --- @param concurrency? number: limit number of concurrent items processing
|
339 | 340 | --- @return OrgPromise
|
340 | 341 | function Promise.map(callback, list, concurrency)
|
341 |
| - vim.validate({ |
| 342 | + validator.validate({ |
342 | 343 | list = { list, 'table' },
|
343 | 344 | callback = { callback, 'function' },
|
344 | 345 | concurrency = { concurrency, 'number', true },
|
|
383 | 384 | --- @param list any[]: promise or non-promise values
|
384 | 385 | --- @return OrgPromise
|
385 | 386 | function Promise.race(list)
|
386 |
| - vim.validate({ list = { list, 'table' } }) |
| 387 | + validator.validate({ list = { list, 'table' } }) |
387 | 388 | return Promise.new(function(resolve, reject)
|
388 | 389 | for _, e in ipairs(list) do
|
389 | 390 | Promise.resolve(e)
|
|
402 | 403 | --- @param list any[]: promise or non-promise values
|
403 | 404 | --- @return OrgPromise
|
404 | 405 | function Promise.any(list)
|
405 |
| - vim.validate({ list = { list, 'table' } }) |
| 406 | + validator.validate({ list = { list, 'table' } }) |
406 | 407 | return Promise.new(function(resolve, reject)
|
407 | 408 | local remain = #list
|
408 | 409 | if remain == 0 then
|
|
432 | 433 | --- @param list any[]: promise or non-promise values
|
433 | 434 | --- @return OrgPromise
|
434 | 435 | function Promise.all_settled(list)
|
435 |
| - vim.validate({ list = { list, 'table' } }) |
| 436 | + validator.validate({ list = { list, 'table' } }) |
436 | 437 | return Promise.new(function(resolve)
|
437 | 438 | local remain = #list
|
438 | 439 | if remain == 0 then
|
|
0 commit comments