Documentation ¶
Overview ¶
Source: https://github.com/kataras/go-events Package events provides simple EventEmitter support for Go Programming Language
Index ¶
Examples ¶
Constants ¶
View Source
const ( // Version current version number Version = "0.0.3" // DefaultMaxListeners is the number of max listeners per event // default EventEmitters will print a warning if more than x listeners are // added to it. This is a useful default which helps finding memory leaks. // Defaults to 0, which means unlimited DefaultMaxListeners = 0 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EventEmitter ¶
type EventEmitter interface { // AddListener is an alias for .On(eventName, listener). AddListener(EventName, ...Listener) error // Emit fires a particular event, // Synchronously calls each of the listeners registered for the event named // eventName, in the order they were registered, // passing the supplied arguments to each. Emit(EventName, ...any) // EventNames returns an array listing the events for which the emitter has registered listeners. // The values in the array will be strings. EventNames() []EventName // GetMaxListeners returns the max listeners for this emmiter // see SetMaxListeners GetMaxListeners() uint // ListenerCount returns the length of all registered listeners to a particular event ListenerCount(EventName) int // Listeners returns a copy of the array of listeners for the event named eventName. Listeners(EventName) []Listener // On registers a particular listener for an event, func receiver parameter(s) is/are optional On(EventName, ...Listener) error // Once adds a one time listener function for the event named eventName. // The next time eventName is triggered, this listener is removed and then invoked. Once(EventName, ...Listener) error // RemoveAllListeners removes all listeners, or those of the specified eventName. // Note that it will remove the event itself. // Returns an indicator if event and listeners were found before the remove. RemoveAllListeners(EventName) bool // RemoveListener removes given listener from the event named eventName. // Returns an indicator whether listener was removed RemoveListener(EventName, Listener) bool // Clear removes all events and all listeners, restores Events to an empty value Clear() // SetMaxListeners obviously this function allows the MaxListeners // to be decrease or increase. Set to zero for unlimited SetMaxListeners(uint) // Len returns the length of all registered events Len() int }
EventEmitter is the message/or/event manager
type Events ¶
Events the type for registered listeners, it's just a map[string][]func(...any)
Example ¶
// regiter our events to the default event emmiter for evt, listeners := range testEvents { _event.On(evt, listeners...) } user := "user1" room := "room1" createUser(user) joinUserTo(user, room) leaveFromRoom(user, room)
Output: A new User just created! A new User just created, *from second event listener user1 joined to room: room1 user1 left from the room: room1
func (Events) CopyTo ¶
func (e Events) CopyTo(emmiter EventEmitter)
CopyTo copies the event listeners to an EventEmitter
Click to show internal directories.
Click to hide internal directories.