Module bait
the event emitter
Introduction
Bait is the event emitter for Hilbish. Much like Node.js and
@@ -9,23 +9,23 @@ pick a unique name!
Usage of the Bait module consists of userstanding
event-driven architecture, but it’s pretty simple:
If you want to act on a certain event, you can catch
it.
You can act on events via callback functions.
Examples of this are in the Hilbish default config!
-Consider this part of it:
bait.catch('command.exit', function(code)
- running = false
- doPrompt(code ~= 0)
- doNotifyPrompt()
-end)
-
What this does is, whenever the command.exit
event is thrown,
+Consider this part of it:
bait.catch('command.exit', function(code)
+ running = false
+ doPrompt(code ~= 0)
+ doNotifyPrompt()
+end)
+
What this does is, whenever the command.exit
event is thrown,
this function will set the user prompt.
Functions
-
bait.catch(name, cb)
-
Catches a hook with name
. Runs the cb
when it is thrown
Parameters
-
string
name
ummm
bait.catchOnce(name, cb)
-
Same as catch, but only runs the cb
once and then removes the hook
Parameters
-
This function has no parameters.
bait.hooks(name) -> table
-
Returns a table with hooks (callback functions) on the event with name
.
Parameters
-
This function has no parameters.
bait.release(name, catcher)
-
Removes the catcher
for the event with name
.
+
bait.catch(name, cb)
+
Catches a hook with name
. Runs the cb
when it is thrown
Parameters
+
string
name
ummm
function
cb
?
bait.catchOnce(name, cb)
+
Same as catch, but only runs the cb
once and then removes the hook
Parameters
+
This function has no parameters.
bait.hooks(name) -> table
+
Returns a table with hooks (callback functions) on the event with name
.
Parameters
+
This function has no parameters.
bait.release(name, catcher)
+
Removes the catcher
for the event with name
.
For this to work, catcher
has to be the same function used to catch
an event, like one saved to a variable.
Parameters
-
This function has no parameters.
bait.throw(name, …args)
-
Throws a hook with name
with the provided args
Parameters
-
string
name
The name of the hook.
any
args
(This type is variadic. You can pass an infinite amount of parameters with this type.)
The arguments to pass to the hook.
\ No newline at end of file
+This function has no parameters.