19 #ifndef IRCCD_DAEMON_TRANSPORT_COMMAND_HPP
20 #define IRCCD_DAEMON_TRANSPORT_COMMAND_HPP
27 #include <irccd/sysconfig.hpp>
31 #include <string_view>
34 #include <irccd/json_util.hpp>
39 class transport_client;
57 using constructor = std::function<std::unique_ptr<transport_command> ()>;
74 virtual auto
get_name() const noexcept ->
std::string_view = 0;
109 auto get_name()
const noexcept -> std::string_view
override;
134 auto get_name()
const noexcept -> std::string_view
override;
155 auto get_name()
const noexcept -> std::string_view
override;
182 auto get_name()
const noexcept -> std::string_view
override;
208 auto get_name()
const noexcept -> std::string_view
override;
234 auto get_name()
const noexcept -> std::string_view
override;
259 auto get_name()
const noexcept -> std::string_view
override;
285 auto get_name()
const noexcept -> std::string_view
override;
310 auto get_name()
const noexcept -> std::string_view
override;
331 auto get_name()
const noexcept -> std::string_view
override;
356 auto get_name()
const noexcept -> std::string_view
override;
381 auto get_name()
const noexcept -> std::string_view
override;
410 auto get_name()
const noexcept -> std::string_view
override;
436 auto get_name()
const noexcept -> std::string_view
override;
462 auto get_name()
const noexcept -> std::string_view
override;
490 auto get_name()
const noexcept -> std::string_view
override;
517 auto get_name()
const noexcept -> std::string_view
override;
545 auto get_name()
const noexcept -> std::string_view
override;
566 auto get_name()
const noexcept -> std::string_view
override;
593 auto get_name()
const noexcept -> std::string_view
override;
620 auto get_name()
const noexcept -> std::string_view
override;
648 auto get_name()
const noexcept -> std::string_view
override;
675 auto get_name()
const noexcept -> std::string_view
override;
702 auto get_name()
const noexcept -> std::string_view
override;
729 auto get_name()
const noexcept -> std::string_view
override;
755 auto get_name()
const noexcept -> std::string_view
override;
782 auto get_name()
const noexcept -> std::string_view
override;
794 #endif // !IRCCD_DAEMON_COMMAND_HPP
Implementation of server-nick transport command.
Definition: transport_command.hpp:670
Abstract transport client class.
Definition: transport_client.hpp:45
Implementation of server-message transport command.
Definition: transport_command.hpp:615
Implementation of server-me transport command.
Definition: transport_command.hpp:588
Implementation of server-mode transport command.
Definition: transport_command.hpp:643
Implementation of server-invite transport command.
Definition: transport_command.hpp:485
Server side remote command.
Definition: transport_command.hpp:47
Implementation of server-disconnect transport command.
Definition: transport_command.hpp:431
Implementation of rule-list transport command.
Definition: transport_command.hpp:326
virtual void exec(bot &bot, transport_client &client, const document &args)=0
Implementation of server-part transport command.
Definition: transport_command.hpp:724
Implementation of rule-move transport command.
Definition: transport_command.hpp:351
Implementation of plugin-unload transport command.
Definition: transport_command.hpp:229
Implementation of server-info transport command.
Definition: transport_command.hpp:457
std::function< std::unique_ptr< transport_command >()> constructor
Command constructor factory.
Definition: transport_command.hpp:57
Implementation of server-notice transport command.
Definition: transport_command.hpp:697
Implementation of server-list transport command.
Definition: transport_command.hpp:561
Implementation of rule-remove transport command.
Definition: transport_command.hpp:376
Implementation of plugin-config transport command.
Definition: transport_command.hpp:104
Implementation of server-kick transport command.
Definition: transport_command.hpp:540
Irccd main instance.
Definition: bot.hpp:58
Convenient JSON object parser.
Definition: json_util.hpp:225
Implementation of server-reconnect transport command.
Definition: transport_command.hpp:750
Implementation of server-join transport command.
Definition: transport_command.hpp:512
Implementation of plugin-list transport command.
Definition: transport_command.hpp:150
Implementation of server-connect transport command.
Definition: transport_command.hpp:405
Implementation of rule-add transport command.
Definition: transport_command.hpp:254
Implementation of rule-edit transport command.
Definition: transport_command.hpp:280
Implementation of plugin-load transport command.
Definition: transport_command.hpp:177
Implementation of plugin-reload transport command.
Definition: transport_command.hpp:203
Main irccd namespace.
Definition: bot.hpp:41
virtual auto get_name() const noexcept -> std::string_view=0
Implementation of plugin-info transport command.
Definition: transport_command.hpp:129
Implementation of rule-info transport command.
Definition: transport_command.hpp:305
Implementation of server-topic transport command.
Definition: transport_command.hpp:777
static auto registry() noexcept -> const std::vector< constructor > &
Registry of all commands.