/* */ #include "NameMatchOptionHandler.h" #include #include "OptionHandlerException.h" #include "a2functional.h" #include "Option.h" namespace aria2 { NameMatchOptionHandler::NameMatchOptionHandler (const std::string& optName, const std::string& description, const std::string& defaultValue, ARG_TYPE argType, char shortName) : optName_(optName), description_(description), defaultValue_(defaultValue), id_(0), argType_(argType), shortName_(shortName), hidden_(false) {} NameMatchOptionHandler::~NameMatchOptionHandler() {} bool NameMatchOptionHandler::canHandle(const std::string& optName) { return optName_ == optName; } void NameMatchOptionHandler::parse(Option& option, const std::string& arg) { try { parseArg(option, arg); } catch(Exception& e) { throw OPTION_HANDLER_EXCEPTION2(optName_, e); } } bool NameMatchOptionHandler::hasTag(const std::string& tag) const { return std::find(tags_.begin(), tags_.end(), tag) != tags_.end(); } void NameMatchOptionHandler::addTag(const std::string& tag) { tags_.push_back(tag); } std::string NameMatchOptionHandler::toTagString() const { return strjoin(tags_.begin(), tags_.end(), ", "); } } // namespace aria2