protocol

package
v0.0.0-...-7cb85a9 Latest Latest
Warning

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

Go to latest
Published: Aug 15, 2024 License: MIT Imports: 3 Imported by: 0

Documentation

Overview

Package protocol implements admin-only arbitrary functions.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Map

type Map struct {
	// contains filtered or unexported fields
}

Map is a simple wrapper around a map that stores protocols.

func New

func New() *Map

New creates a new map.

func (*Map) Add

func (m *Map) Add(idx int, p Protocol)

Add appends a protocol to the internal map.

func (*Map) AddFunc

func (m *Map) AddFunc(idx int, f ProtocolHandlerFunc)

AddFunc does the same as Add, except with a handler func.

func (*Map) MetaData

func (m *Map) MetaData(idx int) *MetaData

MetaData retrieves metadata for a protocol.

func (*Map) MetaDatas

func (m *Map) MetaDatas() map[int]*MetaData

MetaDatas retrieves metadata for every protocol.

func (*Map) Protocol

func (m *Map) Protocol(idx int) Protocol

Protocol retrieves a protocol from the internal map.

func (*Map) Remove

func (m *Map) Remove(idx int)

Remove deletes a protocol from the internal map.

func (*Map) SetMetaData

func (m *Map) SetMetaData(idx int, name, description string)

SetMetaData associates metadata to a protocol.

type MetaData

type MetaData struct {
	Name        string
	Description string
}

MetaData contains data relating to a protocol.

type Protocol

type Protocol interface {
	Handle(context.Context, *gateway.MessageCreateEvent, []string) error
}

Protocol is an admin-only arbitrary function.

type ProtocolHandlerFunc

type ProtocolHandlerFunc func(context.Context, *gateway.MessageCreateEvent, []string) error

ProtocolHandlerFunc implements the protocol interface.

func (ProtocolHandlerFunc) Handle

Handle implements the protocol interface.

Jump to

Keyboard shortcuts

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