Annotate

teal-src/util/promise.d.tl @ 12612:588b1d175838

util.promise: Add Teal interface specification file
author Kim Alvefur <zash@zash.se>
date Sun, 24 Jul 2022 21:25:41 +0200
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12612
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 local record lib
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 type resolve_func = function (any)
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4 type promise_body = function (resolve_func, resolve_func)
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 record Promise<A, B>
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 type on_resolved = function (A) : any
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 type on_rejected = function (B) : any
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 next : function (Promise, on_resolved, on_rejected) : Promise<any, any>
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 end
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 new : function (promise_body) : Promise
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 resolve : function (any) : Promise
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 reject : function (any) : Promise
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 all : function ({ Promise }) : Promise
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 all_settled : function ({ Promise }) : Promise
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 race : function ({ Promise }) : Promise
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 try : function
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 is_promise : function(any) : boolean
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 end
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21
588b1d175838 util.promise: Add Teal interface specification file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 return lib