Forest Logo
search
package_2

create-signal

By @sap0bombado

Roblox

Mirrored

create-signal

Fast, lightweight event emitter for Luau.

Benchmarked vs SignalPlus:

OperationcreateSignalSignalPlus
create128ns141ns
connect444ns678ns
fire (1 listener)769ns823ns
fire (10 listeners)7884ns7800ns
disconnect156ns233ns

Install

[dependencies]
createSignal = "sap0bombado/create-signal@1.4.3"

API

createSignal<T...>() -> Signal<T...>

Creates a new signal.

Signal<T...>

MethodSignatureDescription
connect(callback: (T...) -> ()) -> ConnectionRegister a listener
once(callback: (T...) -> ()) -> ConnectionRegister a one-shot listener
fire(...: T...) -> ()Fire the signal
wait() -> T...Yield until the signal fires, returns the args
disconnectAll() -> ()Remove all listeners
destroy() -> ()Disconnect all and clear the signal table

Connection

Field/MethodTypeDescription
connectedbooleanWhether the connection is still active
disconnect() -> ()Disconnect this listener

Example

local signal = createSignal<<(string, number)>>()

signal:connect(function(name, age)
    print(name, age)
end)

signal:fire("John", 23)

Package Details

Install command (Click to copy)


Version

1.4.3

License

MIT

check_circle

Safe for commercial use

Automated license review — not legal advice.