Simple but powerful signal system
local Signal = require("shard.signal")
Adds callback function to signal
Emits signal with or without parameters
Removes callback function from signal
Clears all callback functions from signal
local Signal = require("shard/signal")
function test1(a)
print(a .. 1)
end
function test2(a)
print(a .. 2)
end
Signal.on("test", test1)
Signal.on("test", test2)
Signal.on("test", function()
print("anonymous function")
end)
Signal.emit("test", "its only test ")
print()
Signal.unRegister("test", test2)
Signal.emit("test", "its only test ")
print()
Signal.clear("test")
Signal.emit("test", "its only test ")