From 8727c132fce9bc15378d39f064a71274c753728c Mon Sep 17 00:00:00 2001 From: Yoshihiro Hokazono Date: Mon, 13 Sep 2021 07:07:20 +0900 Subject: [PATCH 1/2] get("out") and get("--out") are both avaibale --- include/argparse/argparse.hpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/include/argparse/argparse.hpp b/include/argparse/argparse.hpp index 7da3462..aae066b 100644 --- a/include/argparse/argparse.hpp +++ b/include/argparse/argparse.hpp @@ -945,6 +945,21 @@ public: if (tIterator != mArgumentMap.end()) { return *(tIterator->second); } + if (aArgumentName.front() != '-') { + std::string nameStr(aArgumentName); + // "-" + aArgumentName + nameStr = "-" + nameStr; + tIterator = mArgumentMap.find(nameStr); + if (tIterator != mArgumentMap.end()) { + return *(tIterator->second); + } + // "--" + aArgumentName + nameStr = "-" + nameStr; + tIterator = mArgumentMap.find(nameStr); + if (tIterator != mArgumentMap.end()) { + return *(tIterator->second); + } + } throw std::logic_error("No such argument"); } From 971f687a1784e354b8eaa7efeeae61b8a50ecc3a Mon Sep 17 00:00:00 2001 From: Yoshihiro Hokazono Date: Mon, 13 Sep 2021 07:08:37 +0900 Subject: [PATCH 2/2] Kind error message --- include/argparse/argparse.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/argparse/argparse.hpp b/include/argparse/argparse.hpp index aae066b..cdbcd19 100644 --- a/include/argparse/argparse.hpp +++ b/include/argparse/argparse.hpp @@ -960,7 +960,7 @@ public: return *(tIterator->second); } } - throw std::logic_error("No such argument"); + throw std::logic_error("No such argument: " + std::string(aArgumentName)); } // Print help message