methods
--[[
glSignal
new<T...>() -> (glSignal<T...>)
Disconnect all connections. Clears the linked list and relevent items get GC'd.
disconnectAll: (signal: glSignal<T...>) -> (),
Bind a function to the signal. This is the default connection which all other connection types inherit from.
connect: (signal: glSignal<T...>, callback: (T...) -> ()) -> (glConnection<T...>),
Bind a function to the signal, after one usage it will be automatically disconnected and gc'd.
once: (signal: glSignal<T...>, callback: (T...) -> ()) -> (glConnection<T...>),
Bind a function to the signal, after <amount: number> uses, it will automatically disconnect.
limit: (signal: glSignal<T...>, amount: number, callback: (T...) -> ()) -> (glConnection<T...>),
Bind a function to the signal, after each signal fire <evaluationFunction: () -> (boolean)> will be executed.
If it returns true it will automatically disconnect.
each: (signal: glSignal<T...>, evaluationFunction: () -> (boolean), callback: (T...) -> ()) -> (glConnection<T...>),
Bind a function to the signal, after <disconnectAfterSeconds: number> seconds, it will automatically disconnect.
after: (signal: glSignal<T...>, disconnectAfterSeconds: number, callback: (T...) -> ()) -> (glConnection<T...>),
Yields execution until the signal is fired. Returns T... after the signal has been fired.
wait: (signal: glSignal<T...>) -> (T...),
Yields execution until the signal has been fired or <timeOut: number> has elapsed. If it times out, nil will be returned in place of T...
waitUntil: (signal: glSignal<T...>, timeOut: number) -> (T...),
Fires the signal with T... as arguments.
fire: (signal: glSignal<T...>, T...) -> (),
Destroys the signal and connections.
destroy: (signal: glSignal<T...>) -> ()
glConnection
connect: (signal: glSignal<T...>, callback: (T...) -> ()) -> (glConnection<T...>),
Disconnects the connection.
disconnect: (connection: glConnection<T...>) -> ()
Whether or not the signal is currently connected.
connected: boolean,
The amount of times the signal has been called.
calls: number,
If you have questions or issues message @sodere on discord. I’ll also likely reply on here for a while.


