Connector
Utility for handling event callbacks
luau
local connector = require("connector")
local connections = {} :: connector.Connections<boolean, string>
connector.connection(connections, function(success, responce)
if success then
print(`mrrp success!!\n\tresponce:{responce}`)
end
end)
connector.spawn(connections, true, ":3")Types
Connection
luau
type Connection<A...> = typeof(setmetatable({} :: {
connections: Connections<A...>,
f: (A...) -> (),
}, {} :: {
__call: (self: Connection<A...>) -> ()
}))connections- a reference back to the connections table for disconnectingf- the connections callback
Connections
luau
type Connections<A...> = { Connection<A...> }Methods
connection
Creates a new connection object, and inserts it to the connections table
luau
local connections = {} :: connector.Connections<string>
connector.connection(connections, function(name)
print(`hi {name}!`)
end)spawn
Runs every connection in the connections table with the given arguments, and creates a new thread for each connection to run the given connection
luau
local connections = {} :: connector.Connections<string, string>
connector.spawn(connections, "mrrp", "meow :3")defer
Same as spawn except that it uses defer, rather than spawn for creating threads
luau
local connections = {} :: connector.Connections<string>
connector.defer(connections, "meowzers")