https://github.com/aimingoo/events
Multi-cast events in Lua, very Simple and Fast.
https://github.com/aimingoo/events
Last synced: 11 months ago
JSON representation
Multi-cast events in Lua, very Simple and Fast.
- Host: GitHub
- URL: https://github.com/aimingoo/events
- Owner: aimingoo
- License: apache-2.0
- Created: 2015-08-13T14:52:09.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2015-08-13T14:52:19.000Z (almost 11 years ago)
- Last Synced: 2025-07-07T11:16:16.753Z (about 1 year ago)
- Language: Lua
- Homepage:
- Size: 102 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Events
The multi-cast events in lua. it's very Simple, Fast and compatible any lua runtime. support features:
- multi-event single Events instance
- multi-handle single event
- events concat/merge
- cache initialized event anywhere
- exception mute/catch
- e.on("EventName", func) syntax, or e("EventName", func)
# Install & Usage
download the Events.lua file and put into lua search path or current directory.
load it as a file module from lua. use Events.new() get a multi-event instance.
```lua
local e = require('Events')
-- init event 'Begin', with first handle
e.on("Begin", function()
..
end)
-- fire
e.Begin()
```
# More examples
```lua
-- (next...)
-- more events, ex: "End"
e.on("End", function(x)
..
end)
-- more handles of event 'Begin'
e.on("Begin", function()
..
end)
-- fire all handles once call
e.Begin()
-- pass arg/arguments to event, ex: 'x' arg of "End" event
e.End('abcd')
-- new Begin2 event
e.on("Begin2", function()
..
end)
-- concat "Begin" and "Begin2"
-- *) will append Begin2 to Begin
e.on("Begin", e.Begin2)
-- fire all handles in Begin and Begin2
e.Begin()
```