Back to / io / event

Package event

Latest Go to latest

The latest major version is .

Published: 1 hour ago | Licenses: MIT , Unlicense | Module:


Package event contains the types for event handling.

The Queue interface is the protocol for receiving external events.

For example:

var queue event.Queue = ...

for _, e := range queue.Events(h) {
	switch e.(type) {

In general, handlers must be declared before events become available. Other packages such as pointer and key provide the means for declaring handlers for specific event types.

The following example declares a handler ready for key input:


ops := new(op.Ops)
var h *Handler = ...
key.InputOp{Tag: h}.Add(ops)


type Event

type Event interface {

Event is the marker interface for events.

type Queue

type Queue interface {
	// Events returns the available events for an
	// event handler tag.
	Events(t Tag) []Event

Queue maps an event handler key to the events available to the handler.

type Tag

type Tag interface{}

Tag is the stable identifier for an event handler. For a handler h, the tag is typically &h.

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier