support store_into std::filesystem::path

This commit is contained in:
DapengFeng 2024-11-22 16:50:35 +08:00
parent cbd9fd8ed6
commit ba077697d6

View File

@ -57,6 +57,7 @@ SOFTWARE.
#include <utility> #include <utility>
#include <variant> #include <variant>
#include <vector> #include <vector>
#include <filesystem>
#endif #endif
#ifndef ARGPARSE_CUSTOM_STRTOF #ifndef ARGPARSE_CUSTOM_STRTOF
@ -730,6 +731,14 @@ public:
return *this; return *this;
} }
auto &store_into(std::filesystem::path &var) {
if (m_default_value.has_value()) {
var = std::any_cast<std::filesystem::path>(m_default_value);
}
action([&var](const std::string &s) { var = s; });
return *this;
}
auto &store_into(std::vector<std::string> &var) { auto &store_into(std::vector<std::string> &var) {
if (m_default_value.has_value()) { if (m_default_value.has_value()) {
var = std::any_cast<std::vector<std::string>>(m_default_value); var = std::any_cast<std::vector<std::string>>(m_default_value);