@@ -46,10 +46,8 @@ local new_empty_userdata = function()
46
46
end
47
47
48
48
local new_pending = function (on_fullfilled , on_rejected )
49
- validator .validate ({
50
- on_fullfilled = { on_fullfilled , ' function' , true },
51
- on_rejected = { on_rejected , ' function' , true },
52
- })
49
+ validator .validate (' on_fullfilled' , on_fullfilled , ' function' , true )
50
+ validator .validate (' on_rejected' , on_rejected , ' function' , true )
53
51
local tbl = {
54
52
_status = PromiseStatus .Pending ,
55
53
_queued = {},
80
78
--- @param executor fun ( resolve : fun ( ... : any ), reject : fun ( ... : any ))
81
79
--- @return OrgPromise
82
80
function Promise .new (executor )
83
- validator .validate ({ executor = { executor , ' function' } } )
81
+ validator .validate (' executor' , executor , ' function' )
84
82
85
83
local self = new_pending ()
86
84
220
218
--- @param on_rejected (fun ( ... : any ): any )?: A callback on rejected.
221
219
--- @return OrgPromise
222
220
function Promise .next (self , on_fullfilled , on_rejected )
223
- validator .validate ({
224
- on_fullfilled = { on_fullfilled , ' function' , true },
225
- on_rejected = { on_rejected , ' function' , true },
226
- })
221
+ validator .validate (' on_fullfilled' , on_fullfilled , ' function' , true )
222
+ validator .validate (' on_rejected' , on_rejected , ' function' , true )
227
223
local promise = new_pending (on_fullfilled , on_rejected )
228
224
table.insert (self ._queued , promise )
229
225
vim .schedule (function ()
248
244
--- @param on_finally fun ()
249
245
--- @return OrgPromise
250
246
function Promise .finally (self , on_finally )
251
- validator .validate ({ on_finally = { on_finally , ' function' , true } } )
247
+ validator .validate (' on_finally' , on_finally , ' function' , true )
252
248
return self
253
249
:next (function (...)
254
250
on_finally ()
308
304
--- @param list any[] : promise or non-promise values
309
305
--- @return OrgPromise
310
306
function Promise .all (list )
311
- validator .validate ({ list = { list , ' table' } } )
307
+ validator .validate (' list' , list , ' table' )
312
308
return Promise .new (function (resolve , reject )
313
309
local remain = # list
314
310
if remain == 0 then
339
335
--- @param concurrency ? number : limit number of concurrent items processing
340
336
--- @return OrgPromise
341
337
function Promise .map (callback , list , concurrency )
342
- validator .validate ({
343
- list = { list , ' table' },
344
- callback = { callback , ' function' },
345
- concurrency = { concurrency , ' number' , true },
346
- })
338
+ validator .validate (' list' , list , ' table' )
339
+ validator .validate (' callback' , callback , ' function' )
340
+ validator .validate (' concurrency' , concurrency , ' number' , true )
347
341
348
342
local results = {}
349
343
local processing = 0
392
386
--- @param list any[] : promise or non-promise values
393
387
--- @return OrgPromise
394
388
function Promise .race (list )
395
- validator .validate ({ list = { list , ' table' } } )
389
+ validator .validate (' list' , list , ' table' )
396
390
return Promise .new (function (resolve , reject )
397
391
for _ , e in ipairs (list ) do
398
392
Promise .resolve (e )
411
405
--- @param list any[] : promise or non-promise values
412
406
--- @return OrgPromise
413
407
function Promise .any (list )
414
- validator .validate ({ list = { list , ' table' } } )
408
+ validator .validate (' list' , list , ' table' )
415
409
return Promise .new (function (resolve , reject )
416
410
local remain = # list
417
411
if remain == 0 then
441
435
--- @param list any[] : promise or non-promise values
442
436
--- @return OrgPromise
443
437
function Promise .all_settled (list )
444
- validator .validate ({ list = { list , ' table' } } )
438
+ validator .validate (' list' , list , ' table' )
445
439
return Promise .new (function (resolve )
446
440
local remain = # list
447
441
if remain == 0 then
0 commit comments