summaryrefslogtreecommitdiff
path: root/builtin/async_event.lua
diff options
context:
space:
mode:
authorShadowNinja <shadowninja@minetest.net>2014-04-27 17:55:49 -0400
committerShadowNinja <shadowninja@minetest.net>2014-05-07 17:14:23 -0400
commit1cd512913e4d4ad1fb43d4b6e3d7971bb6c67528 (patch)
tree8c1e2c708f567656684e89faee4f7c8e6c5ec673 /builtin/async_event.lua
parentfef2729fd0945601e6772780514ee55fec35b068 (diff)
downloadminetest-1cd512913e4d4ad1fb43d4b6e3d7971bb6c67528.tar.gz
minetest-1cd512913e4d4ad1fb43d4b6e3d7971bb6c67528.tar.bz2
minetest-1cd512913e4d4ad1fb43d4b6e3d7971bb6c67528.zip
Organize builtin into subdirectories
Diffstat (limited to 'builtin/async_event.lua')
-rw-r--r--builtin/async_event.lua45
1 files changed, 0 insertions, 45 deletions
diff --git a/builtin/async_event.lua b/builtin/async_event.lua
deleted file mode 100644
index 2c3fb8fa7..000000000
--- a/builtin/async_event.lua
+++ /dev/null
@@ -1,45 +0,0 @@
-local tbl = engine or minetest
-
-local SCRIPTDIR = SCRIPTDIR or tbl.get_scriptdir()
-minetest = tbl
-dofile(SCRIPTDIR .. DIR_DELIM .. "serialize.lua")
-
-tbl.async_jobs = {}
-
-local function handle_job(jobid, serialized_retval)
- local retval = tbl.deserialize(serialized_retval)
- assert(type(tbl.async_jobs[jobid]) == "function")
- tbl.async_jobs[jobid](retval)
- tbl.async_jobs[jobid] = nil
-end
-
-if engine ~= nil then
- tbl.async_event_handler = handle_job
-else
- minetest.register_globalstep(function(dtime)
- for i, job in ipairs(tbl.get_finished_jobs()) do
- handle_job(job.jobid, job.retval)
- end
- end)
-end
-
-function tbl.handle_async(func, parameter, callback)
- -- Serialize function
- local serialized_func = string.dump(func)
-
- assert(serialized_func ~= nil)
-
- -- Serialize parameters
- local serialized_param = tbl.serialize(parameter)
-
- if serialized_param == nil then
- return false
- end
-
- local jobid = tbl.do_async_callback(serialized_func, serialized_param)
-
- tbl.async_jobs[jobid] = callback
-
- return true
-end
-