events

package
v0.4.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 1, 2024 License: Apache-2.0 Imports: 3 Imported by: 2

Documentation

Overview

Package events provides simple EventEmitter support for Go Programming Language

Index

Constants

View Source
const (
	// 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

	// EnableWarning prints a warning when trying to add an event which it's len is equal to the maxListeners
	// Defaults to false, which means it does not prints a warning
	EnableWarning = false
)

Variables

This section is empty.

Functions

func AddListener

func AddListener(evt EventName, listener ...Listener)

AddListener is an alias for .On(eventName, listener).

func Clear

func Clear()

Clear removes all events and all listeners, restores Events to an empty value

func Emit

func Emit(evt EventName, data ...interface{})

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.

func GetMaxListeners

func GetMaxListeners() int

GetMaxListeners returns the max listeners for this emitter see SetMaxListeners

func Len

func Len() int

Len returns the length of all registered events

func ListenerCount

func ListenerCount(evt EventName) int

ListenerCount returns the length of all registered listeners to a particular event

func On

func On(evt EventName, listener ...Listener)

On registers a particular listener for an event, func receiver parameter(s) is/are optional

func Once

func Once(evt EventName, listener ...Listener)

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.

func RemoveAllListeners

func RemoveAllListeners(evt EventName) bool

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.

func SetMaxListeners

func SetMaxListeners(n int)

SetMaxListeners obviously this function allows the MaxListeners to be decrease or increase. Set to zero for unlimited

Types

type EventEmitter

type EventEmitter interface {
	// AddListener is an alias for .On(eventName, listener).
	AddListener(EventName, ...Listener)
	// 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, ...interface{})
	// 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 emitter
	// see SetMaxListeners
	GetMaxListeners() int
	// 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)
	// 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)
	// 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(int)
	// Len returns the length of all registered events
	Len() int
}

EventEmitter is the message/or/event manager

func New

func New() EventEmitter

New returns a new, empty, EventEmitter

type EventName

type EventName interface{}

EventName is just a type of string, it's the event name

func EventNames

func EventNames() []EventName

EventNames returns an array listing the events for which the emitter has registered listeners. The values in the array will be strings.

type Events

type Events map[EventName][]Listener

Events the type for registered listeners, it's just a map[string][]func(...interface{})

func (Events) CopyTo

func (e Events) CopyTo(emitter EventEmitter)

CopyTo copies the event listeners to an EventEmitter

type Listener

type Listener func(...interface{})

Listener is the type of a Listener, it's a func which receives any,optional, arguments from the caller/emitter

func Listeners

func Listeners(evt EventName) []Listener

Listeners returns a copy of the array of listeners for the event named eventName.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL