Annotate

teal-src/util/async.d.tl @ 12807:f0f7b0c61465

mod_s2s: Avoid sending too large stanzas Just dropping them isn't great but hopefully something more sensible can be done in the future. Will need work to ensure that this signal is handled correctly in sending modules etc.
author Kim Alvefur <zash@zash.se>
date Tue, 16 Mar 2021 18:30:54 +0100
parent 12498:c3e47a5dd30d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12498
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 local record lib
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 ready : function () : boolean
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 waiter : function (num : integer, allow_many : boolean) : function (), function ()
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4 guarder : function () : function (id : function ()) : function () | nil
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 record runner_t<T>
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 func : function (T)
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 thread : thread
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 enum state_e
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 -- from Lua manual
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 "running"
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 "suspended"
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 "normal"
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 "dead"
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 -- from util.async
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 "ready"
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 "error"
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 end
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 state : state_e
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 notified_state : state_e
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 queue : { T }
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 type watcher_t = function (runner_t<T>, ... : any)
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
23 type watchers_t = { state_e : watcher_t }
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
24 data : any
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
25 id : string
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
26
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
27 run : function (runner_t<T>, T) : boolean, state_e, integer
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
28 enqueue : function (runner_t<T>, T) : runner_t<T>
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
29 log : function (runner_t<T>, string, string, ... : any)
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
30 onready : function (runner_t<T>, function) : runner_t<T>
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
31 onready : function (runner_t<T>, function) : runner_t<T>
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
32 onwaiting : function (runner_t<T>, function) : runner_t<T>
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
33 onerror : function (runner_t<T>, function) : runner_t<T>
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
34 end
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
35 runner : function <T>(function (T), runner_t.watchers_t, any) : runner_t<T>
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
36 wait_for : function (any) : any, any
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
37 sleep : function (t:number)
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
38
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
39 -- set_nexttick = function(new_next_tick) next_tick = new_next_tick; end;
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
40 -- set_schedule_function = function (new_schedule_function) schedule_task = new_schedule_function; end;
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
41 end
c3e47a5dd30d util.async: Add Teal description file
Kim Alvefur <zash@zash.se>
parents:
diff changeset
42 return lib