state

package
v0.0.0-...-994a392 Latest Latest
Warning

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

Go to latest
Published: Jul 26, 2014 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Channel

type Channel struct {
	Name, Topic string
	Modes       ChannelModes
	Nicks       map[string]*ChannelPrivileges
}

func (*Channel) HasNick

func (channel *Channel) HasNick(nick string) (hasNick bool)

func (*Channel) ParseModes

func (channel *Channel) ParseModes(modes string, modeargs ...string)

type ChannelModes

type ChannelModes struct {
	// MODE +p, +s, +t, +n, +m
	Private, Secret, ProtectedTopic, NoExternalMsg, Moderated bool

	// MODE +i, +O, +z
	InviteOnly, OperOnly, SSLOnly bool

	// MODE +r, +Z
	Registered, AllSSL bool

	// MODE +k
	Key string

	// MODE +l
	Limit int
}

type ChannelPrivileges

type ChannelPrivileges struct {
	// MODE +q, +a, +o, +h, +v
	Owner, Admin, Op, HalfOp, Voice bool
}

type Nick

type Nick struct {
	Nick, User, Host, Name string
	Modes                  NickModes
	Channels               map[string]*ChannelPrivileges
}

func (*Nick) InChannel

func (n *Nick) InChannel(channel string) (isIn bool)

type NickModes

type NickModes struct {
	Bot, Invisible, Oper, WallOps, HiddenHost, SSL bool
}

type StateTracker

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

func New

func New(cfg *config.Settings, conn *irc.Connection) *StateTracker

func (*StateTracker) Channels

func (st *StateTracker) Channels() (channels []string)

Return string slice of known channels

func (*StateTracker) GetChannel

func (st *StateTracker) GetChannel(c string) (channel *Channel)

Returns a Channel object

func (*StateTracker) GetNick

func (st *StateTracker) GetNick(n string) (nick *Nick)

Returns a Nick object

func (*StateTracker) GetPrivs

func (st *StateTracker) GetPrivs(c, n string) (privs *ChannelPrivileges, ok bool)

Returns a ChannelPrivs object for the given nick.channel

func (*StateTracker) InitStateCallbacks

func (st *StateTracker) InitStateCallbacks()

func (*StateTracker) Me

func (st *StateTracker) Me() *Nick

Returns Nick object for the bot

func (*StateTracker) Nicks

func (st *StateTracker) Nicks() (nicks []string)

Return string slice of known nicks

Jump to

Keyboard shortcuts

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