glirc2

Copyright(c) Eric Mertens, 2016
LicenseISC
Maintaineremertens@gmail.com
Safe HaskellNone
LanguageHaskell2010

Client.State

Contents

Description

This module provides the core logic of the IRC client. The client state tracks everything about the client.

Synopsis

Client state type

data ClientState Source #

All state information for the IRC client

Constructors

ClientState 

Fields

Client operations

ircIgnorable :: IrcMsg -> ClientState -> Maybe Identifier Source #

Predicate for messages that should be ignored based on the configurable ignore list

removeNetwork :: NetworkId -> ClientState -> (ConnectionState, ClientState) Source #

Remove a network connection and unlink it from the network map. This operation assumes that the networkconnection exists and should only be applied once per connection.

Add messages to buffers

Focus information

data ClientFocus Source #

Instances

Eq ClientFocus Source # 
Ord ClientFocus Source #

Unfocused first, followed by focuses sorted by network. Within the same network the network focus comes first and then the channels are ordered by channel identifier