11local utils = require (' promise-async.utils' )
2-
32local promiseId = {' promise-async' }
43local errFactory = require (' promise-async.error' )
54local shortSrc = debug.getinfo (1 , ' S' ).short_src
@@ -19,10 +18,8 @@ local REJECTED = 3
1918--- @field state PromiseState
2019--- @field result any
2120--- @field queue table
22- --- @field loop PromiseAsyncLoop
2321--- @field needHandleRejection ? boolean
2422--- @field err ? PromiseAsyncError
25- --- @overload fun ( executor : PromiseExecutor ): Promise
2623local Promise = setmetatable ({_id = promiseId }, {
2724 __call = function (self , executor )
2825 return self .new (executor )
@@ -244,8 +241,6 @@ resolvePromise = function(promise, value)
244241 end
245242end
246243
247- --- @param executor PromiseExecutor
248- --- @return Promise
249244function Promise .new (executor )
250245 utils .assertType (executor , ' function' )
251246 --- @type Promise
@@ -262,9 +257,6 @@ function Promise.new(executor)
262257 return o
263258end
264259
265- --- @param onFulfilled ? fun ( value : any )
266- --- @param onRejected ? fun ( reason : any )
267- --- @return Promise
268260function Promise :thenCall (onFulfilled , onRejected )
269261 local o = Promise .new (noop )
270262 table.insert (self .queue , {o , onFulfilled , onRejected })
@@ -274,14 +266,10 @@ function Promise:thenCall(onFulfilled, onRejected)
274266 return o
275267end
276268
277- --- @param onRejected ? fun ( reason : any )
278- --- @return Promise
279269function Promise :catch (onRejected )
280270 return self :thenCall (nil , onRejected )
281271end
282272
283- --- @param onFinally ? fun ()
284- --- @return Promise
285273function Promise :finally (onFinally )
286274 local function wrapFinally ()
287275 if utils .getCallable (onFinally ) then
@@ -299,8 +287,6 @@ function Promise:finally(onFinally)
299287 end )
300288end
301289
302- --- @param value ? any
303- --- @return Promise
304290function Promise .resolve (value )
305291 local typ = type (value )
306292 if Promise .isInstance (value , typ ) then
@@ -318,8 +304,6 @@ function Promise.resolve(value)
318304 end
319305end
320306
321- --- @param reason ? any
322- --- @return Promise
323307function Promise .reject (reason )
324308 local o = Promise .new (noop )
325309 o .state = REJECTED
@@ -328,8 +312,6 @@ function Promise.reject(reason)
328312 return o
329313end
330314
331- --- @param values table
332- --- @return Promise
333315function Promise .all (values )
334316 utils .assertType (values , ' table' )
335317 return Promise .new (function (resolve , reject )
@@ -353,8 +335,6 @@ function Promise.all(values)
353335 end )
354336end
355337
356- --- @param values table
357- --- @return Promise
358338function Promise .allSettled (values )
359339 utils .assertType (values , ' table' )
360340 return Promise .new (function (resolve , reject )
@@ -380,8 +360,6 @@ function Promise.allSettled(values)
380360 end )
381361end
382362
383- --- @param values table
384- --- @return Promise
385363function Promise .any (values )
386364 utils .assertType (values , ' table' )
387365 return Promise .new (function (resolve , reject )
@@ -406,8 +384,6 @@ function Promise.any(values)
406384 end )
407385end
408386
409- --- @param values table
410- --- @return Promise
411387function Promise .race (values )
412388 utils .assertType (values , ' table' )
413389 return Promise .new (function (resolve , reject )
0 commit comments