Never copy this.
Initialises all plugins' resource files.
Reloads all plugins by calling any module-level reload functions.
Sets up all plugins, calling any module-level setup functions.
Starts all plugins by calling any module-level start functions.
Propagates updated bots, clients, servers and/or settings, to this, parser, and to all plugins.
Numeric ID of the current connection, to disambiguate between multiple connections in one program run. Accessor.
Generates a new connection ID.
Resets and *minimally* initialises all plugins.
Propgates an updated struct, to this, parser, and to each plugins' IRCPluginStates, overwriting existing such.
Tears down all plugins, deinitialising them and having them save their settings for a clean shutdown. Calls module-level teardown functions.
Takes one or more lines from the passed buffer and sends them to the server.
A record of a successful connection.
When this is set by signal handlers, the program should exit. Other parts of the program will be monitoring it.
Command-line arguments passed to the program.
Buffer of outgoing background message strings.
IRC bot values and state.
Flag to keep record of whether or not the program is run under the Callgrind profiler.
The Connection that houses and wraps the socket we use to connect to, write to and read from the server.
Settings relating to the connection between the bot and the IRC server.
History records of established connections this execution run.
Custom settings specfied at the command line with the --set parameter.
Buffer of outgoing fast message strings, used on Twitch servers.
Transient state flags of this Kameloso instance.
Buffer of outgoing message strings to be sent immediately.
Associative array of string arrays of unexpected configuration entries that did not belong.
Associative array of string arrays of expected configuration entries that were missing.
Buffer of outgoing message strings.
Parser instance.
A runtime array of all plugins. We iterate these when we have finished parsing an IRCEvent, and call the relevant event handlers of each.
An associative array o fwhen a nickname was last issued a WHOIS query for, UNIX timestamps by nickname key, for hysteresis and rate-limiting.
Buffer of outgoing priority message strings.
The root copy of the program-wide settings.
Values and state needed to throttle sending messages.
State needed for the kameloso bot, aggregated in a struct for easier passing by reference.