23 CommandOutputType mType;
24 std::unique_ptr<CommandPropertyBag> mBag;
25 std::vector<CommandOutputMessage> mMessages;
30 template <
class First,
class... Args>
31 requires(!std::is_same_v<std::remove_cvref_t<First>, std::vector<class CommandOutputParameter>>)
32 void success(fmt::format_string<First, Args...> fmt, First&& _args, Args&&... args) {
33 success(fmt::vformat(fmt.get(), fmt::make_format_args(_args, args...)));
36 template <
class First,
class... Args>
37 requires(!std::is_same_v<std::remove_cvref_t<First>, std::vector<class CommandOutputParameter>>)
38 void error(fmt::format_string<First, Args...> fmt, First&& _args, Args&&... args) {
39 error(fmt::vformat(fmt.get(), fmt::make_format_args(_args, args...)));
42 void error(std::string_view str) { mMessages.emplace_back(CommandOutputMessageType::Error, std::string{str}); }
43 void success(std::string_view str) {
44 mMessages.emplace_back(CommandOutputMessageType::Success, std::string{str});
48 void error(std::string_view msgId, std::vector<class CommandOutputParameter>
const& params) {
49 std::vector<std::string> args;
50 args.reserve(params.size());
51 for (
auto& param : params) {
52 args.emplace_back(param);
54 mMessages.emplace_back(CommandOutputMessageType::Error, std::string{msgId}, std::move(args));
56 void success(std::string_view msgId, std::vector<class CommandOutputParameter>
const& params) {
57 std::vector<std::string> args;
58 args.reserve(params.size());
59 for (
auto& param : params) {
60 args.emplace_back(param);
62 mMessages.emplace_back(CommandOutputMessageType::Success, std::string{msgId}, std::move(args));
77 MCAPI
void addMessage(
78 ::std::string
const& msgId,
79 ::std::vector<::CommandOutputParameter>
const& params,
80 ::CommandOutputMessageType type
83 MCAPI
void addToResultList(::std::string
const& key,
::Actor const& element);
85 MCAPI
void addToResultList(::std::string
const& key, ::std::string
const& element);
87 MCAPI
void error(::std::string
const& msgId, ::std::vector<::CommandOutputParameter>
const& params);
90 ::CommandOutputType type,
92 ::std::vector<::CommandOutputMessage>&& messages,
93 ::std::unique_ptr<::CommandPropertyBag>&& data
96 MCAPI
void success(::std::string
const& msgId, ::std::vector<::CommandOutputParameter>
const& params);
106 MCAPI
void* $ctor(::CommandOutputType type);