aboutsummaryrefslogtreecommitdiff
path: root/util.lua
diff options
context:
space:
mode:
authorElias Fleckenstein <eliasfleckenstein@web.de>2021-08-06 19:19:23 +0200
committerElias Fleckenstein <eliasfleckenstein@web.de>2021-08-06 19:19:23 +0200
commita2770298f040307f8dd59c7a88d7e40d37faec14 (patch)
tree3ce0ec0c31be5b2f87c086488973e8957acf84ad /util.lua
parentf6cc945b08e5a89492d92a88a7146da421e42819 (diff)
downloadlua_async-a2770298f040307f8dd59c7a88d7e40d37faec14.tar.xz
Add source code
Diffstat (limited to 'util.lua')
-rw-r--r--util.lua13
1 files changed, 13 insertions, 0 deletions
diff --git a/util.lua b/util.lua
new file mode 100644
index 0000000..c4067f1
--- /dev/null
+++ b/util.lua
@@ -0,0 +1,13 @@
+function lua_async.yield()
+ local co = assert(coroutine.running(), "yield called outside of an async function")
+
+ setTimeout(lua_async.resume, 0, co)
+
+ coroutine.yield()
+end
+
+function lua_async.sleep(ms)
+ await(Promise(function(resolve)
+ setTimeout(resolve, ms)
+ end))
+end