wrap os.pullEventRaw to have return types

This commit is contained in:
Mikayla Fischler 2022-07-19 15:18:11 -04:00
parent d6a201a45f
commit 1afafba501
9 changed files with 53 additions and 14 deletions

View File

@ -267,8 +267,7 @@ function coordinator.comms(version, modem, sv_port, sv_listen, api_listen, sv_wa
clock.start()
while (util.time_s() - start) < timeout_s and not self.sv_linked do
---@diagnostic disable-next-line: undefined-field
local event, p1, p2, p3, p4, p5 = os.pullEventRaw()
local event, p1, p2, p3, p4, p5 = util.pull_event()
if event == "timer" and clock.is_clock(p1) then
-- timed out attempt, try again

View File

@ -13,7 +13,7 @@ local config = require("coordinator.config")
local coordinator = require("coordinator.coordinator")
local renderer = require("coordinator.renderer")
local COORDINATOR_VERSION = "alpha-v0.3.4"
local COORDINATOR_VERSION = "alpha-v0.3.5"
local print = util.print
local println = util.println
@ -149,8 +149,7 @@ log.debug("boot> conn watchdog started")
-- event loop
-- ui_ok will never change in this loop, same as while true or exit if UI start failed
while ui_ok do
---@diagnostic disable-next-line: undefined-field
local event, param1, param2, param3, param4, param5 = os.pullEventRaw()
local event, param1, param2, param3, param4, param5 = util.pull_event()
-- handle event
if event == "peripheral_detach" then

View File

@ -13,7 +13,7 @@ local config = require("reactor-plc.config")
local plc = require("reactor-plc.plc")
local threads = require("reactor-plc.threads")
local R_PLC_VERSION = "beta-v0.8.1"
local R_PLC_VERSION = "beta-v0.8.2"
local print = util.print
local println = util.println

View File

@ -55,8 +55,7 @@ function threads.thread__main(smem, init)
local plc_comms = smem.plc_sys.plc_comms
local conn_watchdog = smem.plc_sys.conn_watchdog
---@diagnostic disable-next-line: undefined-field
local event, param1, param2, param3, param4, param5 = os.pullEventRaw()
local event, param1, param2, param3, param4, param5 = util.pull_event()
-- handle event
if event == "timer" and loop_clock.is_clock(param1) then

View File

@ -25,7 +25,7 @@ local imatrix_rtu = require("rtu.dev.imatrix_rtu")
local turbine_rtu = require("rtu.dev.turbine_rtu")
local turbinev_rtu = require("rtu.dev.turbinev_rtu")
local RTU_VERSION = "beta-v0.7.9"
local RTU_VERSION = "beta-v0.7.10"
local rtu_t = types.rtu_t

View File

@ -49,8 +49,7 @@ function threads.thread__main(smem)
-- event loop
while true do
---@diagnostic disable-next-line: undefined-field
local event, param1, param2, param3, param4, param5 = os.pullEventRaw()
local event, param1, param2, param3, param4, param5 = util.pull_event()
if event == "timer" and loop_clock.is_clock(param1) then
-- start next clock timer

View File

@ -37,6 +37,40 @@ types.TRI_FAIL = {
-- STRING TYPES --
---@alias os_event
---| "alarm"
---| "char"
---| "computer_command"
---| "disk"
---| "disk_eject"
---| "http_check"
---| "http_failure"
---| "http_success"
---| "key"
---| "key_up"
---| "modem_message"
---| "monitor_resize"
---| "monitor_touch"
---| "mouse_click"
---| "mouse_drag"
---| "mouse_scroll"
---| "mouse_up"
---| "paste"
---| "peripheral"
---| "peripheral_detach"
---| "rednet_message"
---| "redstone"
---| "speaker_audio_empty"
---| "task_complete"
---| "term_resize"
---| "terminate"
---| "timer"
---| "turtle_inventory"
---| "websocket_closed"
---| "websocket_failure"
---| "websocket_message"
---| "websocket_success"
---@alias rtu_t string
types.rtu_t = {
redstone = "redstone",

View File

@ -180,6 +180,16 @@ function util.time()
return util.time_ms()
end
-- OS --
-- OS pull event raw wrapper with types
---@param target_event? string event to wait for
---@return os_event event, any param1, any param2, any param3, any param4, any param5
function util.pull_event(target_event)
---@diagnostic disable-next-line: undefined-field
return os.pullEventRaw(target_event)
end
-- PARALLELIZATION --
-- protected sleep call so we still are in charge of catching termination

View File

@ -13,7 +13,7 @@ local svsessions = require("supervisor.session.svsessions")
local config = require("supervisor.config")
local supervisor = require("supervisor.supervisor")
local SUPERVISOR_VERSION = "beta-v0.5.3"
local SUPERVISOR_VERSION = "beta-v0.5.4"
local print = util.print
local println = util.println
@ -84,8 +84,7 @@ loop_clock.start()
-- event loop
while true do
---@diagnostic disable-next-line: undefined-field
local event, param1, param2, param3, param4, param5 = os.pullEventRaw()
local event, param1, param2, param3, param4, param5 = util.pull_event()
-- handle event
if event == "peripheral_detach" then