#include "ArenaTeamFilter.h"
◆ CreateFilterByUserInput()
std::unique_ptr< ArenaTeamFilter > ArenaTeamFilterFactoryByUserInput::CreateFilterByUserInput |
( |
std::string |
userInput | ) |
|
|
inline |
83 {
84 std::transform(userInput.begin(), userInput.end(), userInput.begin(),
85 [](unsigned char c) { return std::tolower(c); });
86
87 if (userInput == "all")
88 return std::make_unique<ArenaTeamFilterAllTeams>();
89
90
91 std::vector<uint8> validTypes =
ParseTypes(userInput);
92
93 if (!validTypes.empty())
94 return std::make_unique<ArenaTeamFilterByTypes>(validTypes);
95
96 return nullptr;
97 }
References ParseTypes().
Referenced by arena_commandscript::HandleArenaSeasonRewardCommand(), and TEST_F().
◆ ParseTypes()
std::vector< uint8 > ArenaTeamFilterFactoryByUserInput::ParseTypes |
( |
std::string_view |
userInput | ) |
|
|
inlineprivate |
101 {
102 std::vector<uint8> validTypes;
104
105 for (auto const& token : tokens)
107 validTypes.push_back(*typeOpt);
108
109 return validTypes;
110 }
std::uint8_t uint8
Definition Define.h:109
Definition AsioHacksFwd.h:47
std::vector< std::string_view > Tokenize(std::string_view str, char sep, bool keepEmpty)
Definition Tokenize.cpp:20
Optional< Result > StringTo(std::string_view str, Params &&... params)
Definition StringConvert.h:244
References Acore::Tokenize().
Referenced by CreateFilterByUserInput().
The documentation for this class was generated from the following file: