From 52fd4ea8bad5cd7d3940a41df4f8f54b4e72beae Mon Sep 17 00:00:00 2001 From: ilotterytea Date: Sat, 7 Dec 2024 17:24:25 +0500 Subject: feat: a special class for command responses --- bot/src/commands/response.cpp | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 bot/src/commands/response.cpp (limited to 'bot/src/commands/response.cpp') diff --git a/bot/src/commands/response.cpp b/bot/src/commands/response.cpp new file mode 100644 index 0000000..cf13009 --- /dev/null +++ b/bot/src/commands/response.cpp @@ -0,0 +1,40 @@ +#include "response.hpp" + +#include +#include +#include + +namespace bot::command { + Response::Response() { + this->single = std::nullopt; + this->multiple = std::nullopt; + } + + Response::Response(std::string single) { + this->single = single; + this->multiple = std::nullopt; + } + + Response::Response(std::vector multiple) { + this->single = std::nullopt; + this->multiple = multiple; + } + + const std::string Response::get_single() const { + return this->single.value(); + } + + const std::vector Response::get_multiple() const { + return this->multiple.value(); + } + + const bool Response::is_single() const { return this->single.has_value(); } + + const bool Response::is_multiple() const { + return this->multiple.has_value(); + } + + const bool Response::is_empty() const { + return !this->single.has_value() && !this->multiple.has_value(); + } +} \ No newline at end of file -- cgit v1.2.3