irccd  3.0.3
Namespaces | Classes | Typedefs | Enumerations | Functions
irccd::daemon Namespace Reference

Main irccd namespace. More...

Namespaces

 irc
 IRC related classes.
 
 logger
 Loggers, sinks and filters.
 
 rule_util
 Rule utilities.
 
 server_util
 Server utilities.
 
 transport_util
 

Classes

class  bot
 Irccd main instance. More...
 
class  bot_error
 Irccd error. More...
 
class  dynlib_plugin_loader
 Implementation for searching native plugins. More...
 
class  plugin
 Abstract plugin. More...
 
class  plugin_loader
 Abstract interface for searching plugins. More...
 
class  plugin_error
 Plugin error. More...
 
class  plugin_service
 Manage plugins. More...
 
struct  rule
 Manage rule to activate or deactive events. More...
 
class  rule_error
 Rule error. More...
 
class  rule_service
 Store and solve rules. More...
 
struct  channel
 A channel to join with an optional password. More...
 
struct  whois_info
 Describe a whois information. More...
 
struct  connect_event
 Connection success event. More...
 
struct  disconnect_event
 Connection success event. More...
 
struct  invite_event
 Invite event. More...
 
struct  join_event
 Join event. More...
 
struct  kick_event
 Kick event. More...
 
struct  message_event
 Message event. More...
 
struct  me_event
 CTCP action event. More...
 
struct  mode_event
 Mode event. More...
 
struct  names_event
 Names listing event. More...
 
struct  nick_event
 Nick change event. More...
 
struct  notice_event
 Notice event. More...
 
struct  part_event
 Part event. More...
 
struct  topic_event
 Topic event. More...
 
struct  whois_event
 Whois event. More...
 
class  server
 The class that connect to a IRC server. More...
 
class  server_error
 Server error. More...
 
class  server_service
 Manage IRC servers. More...
 
class  transport_client
 Abstract transport client class. More...
 
class  transport_command
 Server side remote command. More...
 
class  plugin_config_command
 Implementation of plugin-config transport command. More...
 
class  plugin_info_command
 Implementation of plugin-info transport command. More...
 
class  plugin_list_command
 Implementation of plugin-list transport command. More...
 
class  plugin_load_command
 Implementation of plugin-load transport command. More...
 
class  plugin_reload_command
 Implementation of plugin-reload transport command. More...
 
class  plugin_unload_command
 Implementation of plugin-unload transport command. More...
 
class  rule_add_command
 Implementation of rule-add transport command. More...
 
class  rule_edit_command
 Implementation of rule-edit transport command. More...
 
class  rule_info_command
 Implementation of rule-info transport command. More...
 
class  rule_list_command
 Implementation of rule-list transport command. More...
 
class  rule_move_command
 Implementation of rule-move transport command. More...
 
class  rule_remove_command
 Implementation of rule-remove transport command. More...
 
class  server_connect_command
 Implementation of server-connect transport command. More...
 
class  server_disconnect_command
 Implementation of server-disconnect transport command. More...
 
class  server_info_command
 Implementation of server-info transport command. More...
 
class  server_invite_command
 Implementation of server-invite transport command. More...
 
class  server_join_command
 Implementation of server-join transport command. More...
 
class  server_kick_command
 Implementation of server-kick transport command. More...
 
class  server_list_command
 Implementation of server-list transport command. More...
 
class  server_me_command
 Implementation of server-me transport command. More...
 
class  server_message_command
 Implementation of server-message transport command. More...
 
class  server_mode_command
 Implementation of server-mode transport command. More...
 
class  server_nick_command
 Implementation of server-nick transport command. More...
 
class  server_notice_command
 Implementation of server-notice transport command. More...
 
class  server_part_command
 Implementation of server-part transport command. More...
 
class  server_reconnect_command
 Implementation of server-reconnect transport command. More...
 
class  server_topic_command
 Implementation of server-topic transport command. More...
 
class  transport_server
 Abstract transport server class. More...
 
class  transport_error
 Transport error. More...
 
class  transport_service
 Manage transport servers and clients. More...
 

Typedefs

using event = std::variant< std::monostate, connect_event, disconnect_event, invite_event, join_event, kick_event, me_event, message_event, mode_event, names_event, nick_event, notice_event, part_event, topic_event, whois_event >
 Store all possible events. More...
 

Enumerations

enum class  channel_mode {
  creator = 'O' , half_op = 'h' , op = 'o' , protection = 'a' ,
  voiced = 'v'
}
 Prefixes for nicknames. More...
 

Functions

auto bot_category () noexcept -> const std::error_category &
 
auto make_error_code (bot_error::error e) noexcept -> std::error_code
 
auto plugin_category () -> const std::error_category &
 
auto make_error_code (plugin_error::error e) -> std::error_code
 
auto operator== (const rule &lhs, const rule &rhs) noexcept -> bool
 
auto operator!= (const rule &lhs, const rule &rhs) noexcept -> bool
 
auto rule_category () -> const std::error_category &
 
auto make_error_code (rule_error::error e) -> std::error_code
 
auto server_category () -> const std::error_category &
 
auto make_error_code (server_error::error e) -> std::error_code
 
auto transport_category () noexcept -> const std::error_category &
 
auto make_error_code (transport_error::error e) noexcept -> std::error_code
 

Detailed Description

Main irccd namespace.

Function Documentation

◆ bot_category()

auto irccd::daemon::bot_category ( ) -> const std::error_category &
noexcept

Get the irccd error category singleton.

Returns
the singleton

◆ make_error_code() [1/5]

auto irccd::daemon::make_error_code ( bot_error::error  e) -> std::error_code
noexcept

Create a std::error_code from bot_error::error enum.

Parameters
ethe error code
Returns
the error code

◆ make_error_code() [2/5]

auto irccd::daemon::make_error_code ( plugin_error::error  e) -> std::error_code

Create a std::error_code from plugin_error::error enum.

Parameters
ethe error code
Returns
the error code

◆ make_error_code() [3/5]

auto irccd::daemon::make_error_code ( rule_error::error  e) -> std::error_code

Create a std::error_code from rule_error::error enum.

Parameters
ethe error code
Returns
the error code

◆ make_error_code() [4/5]

auto irccd::daemon::make_error_code ( server_error::error  e) -> std::error_code

Create a std::error_code from server_error::error enum.

Parameters
ethe error code
Returns
the error code

◆ make_error_code() [5/5]

auto irccd::daemon::make_error_code ( transport_error::error  e) -> std::error_code
noexcept

Create a std::error_code from server_error::error enum.

Parameters
ethe error code
Returns
the error code

◆ operator!=()

auto irccd::daemon::operator!= ( const rule lhs,
const rule rhs 
) -> bool
noexcept

Equality operator.

Parameters
lhsthe left side
rhsthe right side
Returns
false if they equals

◆ operator==()

auto irccd::daemon::operator== ( const rule lhs,
const rule rhs 
) -> bool
noexcept

Equality operator.

Parameters
lhsthe left side
rhsthe right side
Returns
true if they equals

◆ plugin_category()

auto irccd::daemon::plugin_category ( ) -> const std::error_category &

Get the plugin error category singleton.

Returns
the singleton

◆ rule_category()

auto irccd::daemon::rule_category ( ) -> const std::error_category &

Get the rule error category singleton.

Returns
the singleton

◆ server_category()

auto irccd::daemon::server_category ( ) -> const std::error_category &

Get the server error category singleton.

Returns
the singleton

◆ transport_category()

auto irccd::daemon::transport_category ( ) -> const std::error_category &
noexcept

Get the transport error category singleton.

Returns
the singleton